从两列中减去datetime并将结果作为整数放在第三列中

时间:2016-04-27 12:32:31

标签: sql sql-server-2008 datetime

我在表中有2个日期时间列,我想从另一个中减去每一行,并以某种方式将结果放在新的第3列行中作为int。

我知道我必须以某种方式使用DATEFIFF,但更令我困惑的是如何解析表的每一行(也许是循环)?

谢谢!

1 个答案:

答案 0 :(得分:0)

假设Date1Column和Date2Column是datetime字段,从SQL 2008开始的示例。我举了几个例子,显示日期之间的差异,分钟,天,月。

Select

    ,CAST(DATEDIFF(mi, Date1Column, Date2Column) as int) as 'DeltaMinutes'
    ,CAST(DATEDIFF(day, Date1Column, Date2Column) as int) as 'DeltaDays'
    ,ISNULL(DATEDIFF(MONTH, Date1Column, Date2Column), -9999) as 'LastSWAge'

From Table