使用SQL,求两个时间的小时差
需要使用SQL求两个时间的小时差,
例如时间:'2013-03-04 15:30:00.000' , '2013-03-04 17:00:00.000'。
我需要返回的是1.5小时。
如果使用:SELECT DATEDIFF( Hour, '2013-03-04 15:30:00.000', '2013-03-04 17:00:00.000'),
它返回的是2,这不是我想要的结果。
请问各位还有什么方法?
------解决方案--------------------SELECT DATEDIFF( mi, '2013-03-04 15:30:00.000', '2013-03-04 17:00:00.000')/60.0
hour是舍去分钟的,不会计算具体分钟
------解决方案--------------------
select datediff(minute,'2013-03-04 15:30:00.000','2013-03-04 17:00:00.000')/60.0
------解决方案--------------------DECLARE @a DATETIME,@b DATETIME
SELECT @a='2013-03-04 15:30:00.000',@b= '2013-03-04 17:00:00.000'
SELECT DATEDIFF(minute,@a,@b)/60.0
------解决方案--------------------SELECT DATEDIFF( mi, '2013-03-04 15:30:00.000', '2013-03-04 17:00:00.000')*1.0/60
------解决方案--------------------SELECT DATEDIFF( MI, '2013-03-04 15:30:00.000', '2013-03-04 17:00:00.000')/60.0
------解决方案--------------------
SELECT cast(DATEDIFF( mi, '2013-03-04 15:30:00.000', '2013-03-04 17:00:00.000')/60.0 as decimal(28,1))
------解决方案--------------------SELECT convert(decimal(18,1),DATEDIFF( mi, '2013-03-04 15:30:00.000', '2013-03-04 17:00:00.000')/60.0)
类型转换啊,decimal(18,1)这个1是小数位