Поделиться через


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.

Примеры

А. Изменение смещения часового пояса для текущего значения даты и времени

В следующем примере смещение пояса для текущего значения даты и времени изменяется на часовой пояс -07:00.

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

Б. Изменение смещения часового пояса в минутах

В следующем примере текущий часовой пояс изменяется на -120 минут.

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

В. Добавление 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