適用於:SQL Server
Azure SQL Database
Azure SQL 受控執行個體
Azure Synapse Analytics
Microsoft Fabric 中的 SQL 分析端點
Microsoft Fabric 中的倉庫
Microsoft Fabric 中的 SQL 資料庫
傳回從 datetime2 運算式翻譯的 datetimeoffset 值。
語法
TODATETIMEOFFSET ( datetime_expression , timezoneoffset_expression )
引數
datetime_expression
為解析為 datetime2 值的運算式。
注意
運算式的類型不可為 text、ntext 或 image,因為這些類型不可隱含轉換成 varchar 或 nvarchar。
timezoneoffset_expression
這是代表時區時差的運算式,以分鐘為單位 (若為整數),例如 -120,或以小時和分鐘為單位 (若為字串),例如 '+13:00'。 範圍是 +14 到 -14 (以小時為單位)。 此運算式會針對指定的 timezoneoffset_expression,解譯為當地時間。
注意
如果運算式為字元字串,它的格式必須為 {+|-}TZH:THM。
傳回類型
datetimeoffset. 毫秒精確度與 datetime_expression 引數相同。
範例
A. 變更目前日期和時間的時區時差
下列範例會將目前日期和時間的時區時差變更為 -07:00 時區。
DECLARE @todaysDateTime DATETIME2;
SET @todaysDateTime = GETDATE();
SELECT TODATETIMEOFFSET (@todaysDateTime, '-07:00');
-- RETURNS 2019-04-22 16:23:51.7666667 -07:00
B. 變更時區時差 (以分鐘為單位)
下列範例會將目前的時區變更為 -120 分鐘。
SELECT TODATETIMEOFFSET(SYSDATETIME(), -120)
-- RETURNS: 2019-04-22 11:39:21.6986813 -02:00
C. 在時區時差中增加 13 小時的時間
下列範例會在日期和時間中加入 13 小時的時區時差。
SELECT TODATETIMEOFFSET(SYSDATETIME(), '+13:00')
-- RETURNS: 2019-04-22 11:39:29.0339301 +13:00