需要使用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,这不是我想要的结果。请问各位还有什么方法?
例如时间:'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,这不是我想要的结果。请问各位还有什么方法?
hour是舍去分钟的,不会计算具体分钟
select datediff(minute,'2013-03-04 15:30:00.000','2013-03-04 17:00:00.000')/60.0
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 SUBSTRING((SELECT DATEDIFF( mi, '2013-03-04 15:30:00.000',
'2013-03-04 17:00:00.000')/60.0), 1,3)
类型转换啊,decimal(18,1)这个1是小数位
先转化成varchar类型,再substring就行:
SELECT substring(cast(DATEDIFF( mi, '2013-03-04 15:30:00.000', '2013-03-04 17:00:00.000')/60.0 as varchar),1,3)