2015-02-09 51 views
0

在我的過程中,我編寫了一個查詢來獲得兩個日期的小時差異。如何在SQL Server 24小時格式中花費時間差

在某些情況下,我沒有得到正確的區別。

這是我的代碼:

Declare @@Totalwork as Float 
set @Totalwork = (SELECT DATEDIFF(MINUTE, @fpunch, @SPunch)) 
set @Totalwork = (select ABS(@Totalwork)) 
set @totalWork = (select left((cast(@Totalwork as float)/60), 3)) 

當我在datediff功能使用兩次,我沒有得到正確的工作時間。其實我想要正確的區別。

我把價值放在下面。

SELECT DATEDIFF(hour, '10:15', '00:15') 

這裏10:15是早上的時間,00:15是清晨的時間。

如何將時間轉換爲24小時格式?

回答

0

計算使用日期時間

Declare @Totalwork as datetime 
SET @Totalwork= @SPunch - @fpunch 

下面是計算它的一些不同的方式:

SELECT 
    datediff(hour, 0, @Totalwork) [hours], 
    datediff(minute, 0, @Totalwork) % 60 [remaining minutes], 
    datediff(minute, 0, @Totalwork) totalminutes 
    cast(@Totalwork as time) [timedifference], 
    @Totalwork actualdifference, 
    cast(@Totalwork as float)/24 decimalhours 
+0

感謝@ t-clausen.dk – Nuyan 2015-02-09 09:58:48

+0

那麼如何在數位 – Nuyan 2015-02-09 10:00:08

+1

採取準確小時@Nuyan添加到我的回答。不要忘記接受答案。同樣對於您的其他問題 – 2015-02-09 10:03:51

相關問題