Share via


TODATETIMEOFFSET (Transact-SQL)

傳回 datetimeoffset 値,此値是從 datetime2 運算式轉譯而來。

主題連結圖示Transact-SQL 語法慣例

語法

TODATETIMEOFFSET ( expression , time_zone )

引數

  • expression
    這是解析為 datetime2 値的運算式

    [!附註]

    此運算式不能是 text、ntext 或 image 類型,因為這些類型無法隱含地轉換成 varchar 或 nvarchar。

  • time_zone
    這是代表時區時差的運算式 (以分鐘為單位)。範圍是 +14 到 -13。此運算式會針對指定的 time_zone 以當地時間解譯。

    [!附註]

    如果運算式為字元字串,它的格式必須為 {+|-}TZH:THM。

傳回類型

datetimeoffset. 小數有效位數與 datetime 引數相同。

範例

A. 變更目前日期和時間的時區時差

下列範例會將目前日期和時間的時區時差變更為 -07:00 時區。

DECLARE @todaysDateTime Datetime2
SELECT @todaysDateTime = GetDate();
SELECT TODATETIMEOFFSET (@todaysDateTime, '-07:00')
-- RETURNS 2007-08-30 15:51:34.7030000 -07:00

B. 變更時區時差 (以分鐘為單位)

下列範例會將目前的時區變更為 -120 分鐘。

DECLARE @todaysDate Datetime2
SELECT @todaysDate = GetDate();
SELECT TODATETIMEOFFSET (@todaysDate, -120)
-- RETURNS 2007-08-30 15:52:37.8770000 -02:00

C. 在時區時差中增加 13 小時的時間

下列範例會在日期和時間中加入 13 小時的時區時差。

DECLARE @dateTime datetimeoffset(7)= '2007-08-28 18:00:30'
SELECT TODATETIMEOFFSET (@dateTime, '+13:00')
-- RETURNS 2007-08-28 18:00:30.0000000 +13:00