首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 数据库 > SQL Server >

运用SQL,求两个时间的小时差

2013-03-22 
使用SQL,求两个时间的小时差需要使用SQL求两个时间的小时差,例如时间:2013-03-04 15:30:00.000 ,2013-0

使用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 DATEDIFF( mi, '2013-03-04 15:30:00.000', '2013-03-04 17:00:00.000')/60.0
hour是舍去分钟的,不会计算具体分钟
现在结果是:1.500000,我需要对其切割,仅留下1.5,
请问应该怎么做?
我这样写报错
SQL code?12SELECT……

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是小数位

热点排行