我是 SQL 的新手,我想在 中添加/減去偏移值DateTime并回傳新日期。
目前,我正在使用這個
SELECT
GETUTCDATE() AS UTCDate,
GETUTCDATE() AT TIME ZONE 'Eastern Standard Time'
回傳這些值:

當前結果:2021-12-28 07:19:39.320 -05:00
預期結果:2021-12-28 02:19:39.320
我怎樣才能做到這一點?任何幫助,將不勝感激。謝謝
uj5u.com熱心網友回復:
您可以使用 DATEADD 和 DATEDIFF 函式:
SELECT GETUTCDATE() AS UTCDate, GETUTCDATE() AT TIME ZONE 'Eastern
Standard Time' ,
DATEADD(MINUTE, DATEDIFF(MINUTE ,GETUTCDATE(), GETUTCDATE() AT TIME ZONE
'Eastern Standard Time')*-1, GETUTCDATE())
uj5u.com熱心網友回復:
GETUTCDATE()回傳datetime型別。您可以使用它來SYSDATETIMEOFFSET()獲取datetimeoffset并將其轉換為所需的時區。
SELECT
SYSDATETIMEOFFSET() AS UTCDate_with_timezone,
SYSDATETIMEOFFSET() AT TIME ZONE 'Eastern Standard Time';
當AT TIME ZONE運算子應用于datetime值時,它不會更改值,您只需通知系統時區是什么。這個時區將只是附加到值。
轉載請註明出處,本文鏈接:https://www.uj5u.com/qukuanlian/395675.html
標籤:sql sql-server
