В этом руководстве вы узнаете, как использовать функцию SQL Server TODATETIMEOFFSET() для интерпретации значения DATETIME2 по местному времени для указанного часового пояса.
- Введение в функцию SQL Server TODATETIMEOFFSET()
- Примеры функции SQL Server TODATETIMEOFFSET()
- A) Пример изменения смещения часового пояса даты и времени с помощью функции SQL Server TODATETIMEOFFSET()
- Б) Использование функции SQL Server TODATETIMEOFFSET() для изменения смещения часового пояса в минутах
- C) Использование функции SQL Server TODATETIMEOFFSET() для добавления указанного часового смещения часового пояса к текущей дате и времени
Введение в функцию SQL Server TODATETIMEOFFSET()
Функция TODATETIMEOFFSET() преобразует значение DATETIME2 в значение DATETIMEOFFSET.
Ниже показан синтаксис функции TODATETIMEOFFSET():
TODATETIMEOFFSET(expression,time_zone)
Функция TODATETIMEOFFSET() принимает два аргумента:
- выражение — это выражение, которое может быть преобразовано в значение DATETIME2.
- time_zone может быть целым числом или строкой. Это смещение часового пояса в минутах, если вы используете целое число. В противном случае это час и минуты в форме '{+TZH:THM или '-TZH:THM', где TZH — это час, а THM — это минута. Диапазон часов составляет от -14 до +14.
Примеры функции SQL Server TODATETIMEOFFSET()
Давайте рассмотрим несколько примеров использования функции TODATETIMEOFFSET().
A) Пример изменения смещения часового пояса даты и времени с помощью функции SQL Server TODATETIMEOFFSET()
В этом примере смещение часового пояса даты и времени изменяется на -08:00:
SELECT TODATETIMEOFFSET( '2019-03-06 07:43:58', '-08:00' ) result;
Вот что получилось:
result ---------------------------------- 2019-03-06 07:43:58.0000000 -08:00 (1 row affected)
Б) Использование функции SQL Server TODATETIMEOFFSET() для изменения смещения часового пояса в минутах
В этом примере текущий часовой пояс изменяется на -180 минут:
SELECT TODATETIMEOFFSET(GETDATE(), -180) result;
Ниже показан результат:
result ---------------------------------- 2019-03-06 08:34:32.087 -03:00 (1 row affected)
C) Использование функции SQL Server TODATETIMEOFFSET() для добавления указанного часового смещения часового пояса к текущей дате и времени
В следующем примере к дате и времени «2019-03-06 09:55:00» добавляется 12-часовое смещение часового пояса:
SELECT TODATETIMEOFFSET( '2019-03-06 09:55:00', '+13:00') result;
Вывод:
result ---------------------------------- 2019-03-06 09:55:00.0000000 +13:00 (1 row affected)
В этом руководстве вы узнали, как использовать функцию SQL Server TODATETIMEOFFSET() для возврата значения DATETIME2 в значение DATETIMEOFFSET.