我得到的時間差值爲5.5,應該從當前日期時間減去5小時30分鐘。添加當前時間的偏移量
select Dateadd(HH, -5.5,GETUTCDATE()),GETUTCDATE()
在輸出中只減去5小時。 我總是得到一個價值形式的偏移5.5或13.5同樣取決於時區..
這是可能嗎?
我得到的時間差值爲5.5,應該從當前日期時間減去5小時30分鐘。添加當前時間的偏移量
select Dateadd(HH, -5.5,GETUTCDATE()),GETUTCDATE()
在輸出中只減去5小時。 我總是得到一個價值形式的偏移5.5或13.5同樣取決於時區..
這是可能嗎?
我總是在這種形式得到的值偏移5.5或13.5同樣取決於時區..
然後,你可以乘以60的值,並使用minute
日期部分
select Dateadd(MINUTE, -5.5 * 60,GETUTCDATE())
時間算術始終工作在全單位 - 使用-330分鐘,而不是
select Dateadd(MINUTE, -330,GETUTCDATE()),GETUTCDATE()
的輸入功能,旨在爲整數(整數) - 你可能會發現,-5.5被截斷關閉小數部分
是的,這是可以做到的。首先,你需要將你的十進制偏移量轉換成分鐘。然後像以前一樣使用DATEADD。
DECLARE @Offset DECIMAL(18, 2) = 5.5;
DECLARE @Mins INT = 60 * @Offset;
-- Offsetting by decimal time values.
SELECT
DATEADD(MINUTE, @Mins, GETDATE())
;