當我通過下面的代碼計算時間差時,它顯示了相反順序的差異爲什麼?以小時計算時間差時出現意外結果?
declare @startdate time = '08:00:00', @enddate time = '01:00:00'
declare @hour varchar(25),@minutes varchar(25),@seconds varchar(25)
set @hour=datediff(ss,@startdate,@enddate)/60/60%12
set @minutes= datediff(ss,@startdate,@enddate)/60%60
set @seconds= datediff(ss,@startdate,@enddate)%60
select @hour+':'[email protected]+':'[email protected]
我正在計算12小時的差異。我期待的差別是5個小時。但它顯示我-7小時。有人可以解釋嗎?
感謝您的澄清,但現在我正在採取startdate = '08:00:00 pm'和enddate = '01:00:00 pm'但仍然卡住相同的結果,即-7和輸出應該是17小時因爲時間從晚上8點到下午1點開始。爲什麼?使用12和24時鐘 –
嘗試傳遞日期和時間。它應該產生你想要的結果。 – Vikram
正確工作,謝謝 –