2016-03-07 98 views
0

这个问题已被问了很多次,但我找不到任何简单的答案,如何从datediff()获得小时和分钟。DateDiff()小时和分钟?

From To OUTPUT 
08:00 16:30 8,5 
10:00 16:30 6,5 
08:00 15:00 7 

我想用datediff()并希望输出作为我的结果

+0

你的数据是如何存储的? – sagi

+0

我希望datediff(小时和分钟,从,到)作为OUTPUT – Nils

+0

如何从和存储? – sagi

回答

0

DATEDIFF(second, start_date, end_date)/3600.0   

去划分谢谢所有的答案...... !!

1

对不起,我回答了C#的问题先:)

什么你以后是这样的:

SELECT datediff(minute, starttime, endtime) from ... 

当然,你也可以把这个应用到几个小时。 几个小时,分钟,你可以用这个例子:

DECLARE @start datetime 
     , @end datetime 

SELECT @start = '2009-01-01' 
    , @end = DateAdd(mi, 52, DateAdd(hh, 18, DateAdd(dd, 2, @start))) 

SELECT @start 
, @end 

SELECT DateDiff(dd, @start, @end)  As days 
    , DateDiff(hh, @start, @end) % 24 As hours 
    , DateDiff(mi, @start, @end) % 60 As mins 
+0

嗨,我不希望他们作为2或3个不同的列。你能为我提供输出栏吗? – Nils

+0

只需用+'' –

+1

替换逗号即可,这样会导致添加更多内容。在使用+之前,您需要先转换为字符串 – Squirrel

0

刚刚分钟取DATEDIFF(),然后由60

select datediff(minute, '08:00', '16:30')/60.0