如何比较两个日期时间以查找SQL Server中的时差

时间:2018-07-06 17:11:04

标签: sql sql-server sql-server-2008 tsql

我有两列

Column A:                 Column B: 
2017-08-24 14:01:00.000   2017-08-26 10:12:21.760. 

如何使用T-SQL来找出小时和分钟两个日期之间的时差?

3 个答案:

答案 0 :(得分:1)

您可以自己构建结果:

=DataSets!dsDetails.CommandText

与使用select cast(s/3600 as varchar(255)) + ':' + right('00' + cast((s % 3600)/60 as char(2))) as hh:mm from t cross apply (values datediff(second, cola, colb)) v(s); 相比,此方法的优势在于它可以表示大于23的小时。

答案 1 :(得分:0)

使用datediff()函数:

select dateadd(ss, datediff(ss, cola, colb), 0) as diff
from table t;

答案 2 :(得分:0)

这是另一种选择,它将为您提供一个十进制的结果,不确定您要查找的数据类型是什么

Declare @dt1 DATETIME = '2017-08-25 00:00:00.000'
Declare @dt2 DATETIME = '2017-08-26 10:12:21.760'
SELECT DATEDIFF(SECOND,@dt1,@dt2)/3600.00