首頁 >資料庫 >mysql教程 >如何將 SQL Server DATETIMEOFFSET 轉換為 UTC DATETIME?

如何將 SQL Server DATETIMEOFFSET 轉換為 UTC DATETIME?

Linda Hamilton
Linda Hamilton原創
2024-12-31 21:04:14411瀏覽

How Do I Convert SQL Server DATETIMEOFFSET to UTC DATETIME?

將 Sql Server DATETIMEOFFSET 轉換為 UTC DATETIME

在 SQL Server 中,DATETIMEOFFSET 值儲存日期和時間,以及與 UTC 的偏移量。要在考慮偏移量的同時將DATETIMEOFFSET 字段轉換為DATETIME 字段,從而有效地將其轉換為UTC,請考慮以下事項:

使用CONVERT 或CAST 將DATETIMEOFFSET 值轉換為DATETIME2 將透過自動丟棄將該值轉換為UTC偏移量。例如:

DECLARE @createdon DATETIMEOFFSET = '2008-12-19 17:30:09.0000000 +11:00';
SELECT CONVERT(DATETIME2, @createdon, 1);
-- Output: 2008-12-19 06:30:09.0000000

但是,將 DATETIMEOFFSET 轉換為 DATETIME 不會將偏移量設為 UTC。若要明確轉換為偏移量為 00:00 的 DATETIME,請使用 DATETIMEOFFSET 函數:

SELECT CONVERT(DATETIMEOFFSET, CONVERT(DATETIME2, @createdon, 1));
-- Output: 2008-12-19 06:30:09.0000000 +00:00

以上是如何將 SQL Server DATETIMEOFFSET 轉換為 UTC DATETIME?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn