0

我见过很少几个像这样的问题,但没有一个解决方案能完全适用于我的结构。

我当前的查询创建了一个包含 4 列的表,其中 2 列是日期。

我将@tblTransactions其声明为稍后在 select 语句中调用的表。我需要最后的选择语句有一个第 5 列,它显示两个日期之间的天数。

SELECT *
       ,(t.PremDueDate - t.LastTdate) AS 'tpFactor'          <-------- This doesn't work
FROM
       @tblTransactions t

上面的代码显然不起作用,因为 PremDueDate 和 LastTdate 都是 datatype date

使用 SQL Server Management Studio 2010

4

3 回答 3

6

用于DATEDIFF()获取两个日期之间的天数:

SELECT DATEDIFF(DAY, t.PremDueDate, t.LastTdate) AS 'tpFactor'
FROM @tblTransactions t
于 2012-09-05T16:50:22.483 回答
2

试试这个:

SELECT *
    ,DATEDIFF(DD, t.LastTdate, t.PremDueDateP) AS 'tpFactor'
FROM
   @tblTransactions t
于 2012-09-05T16:52:41.997 回答
0

你应该使用DATEDIFF(dd, t.PremDueDate, t.LastTdate)

于 2012-09-05T16:51:56.903 回答