SWITCHOFFSET (Transact-SQL)
Возвращает значение смещения часового пояса с типом данных datetimeoffset, изменившееся с хранящегося на новое заданное смещение часового пояса.
Обзор всех типов данных и функций даты и времени в языке Transact-SQL см. в разделе Функции даты и времени (Transact-SQL). Сведения и примеры, относящиеся к типам данных и функциям даты и времени, см. в разделе Использование данных даты и времени.
Синтаксис
SWITCHOFFSET ( DATETIMEOFFSET, time_zone )
Аргументы
DATETIMEOFFSET
Выражение, которое можно привести к значению datetimeoffset(n).time_zone
Символьная строка в формате [+|-]TZH:TZM или целочисленное значение со знаком (или минуты), представляющие смещение часового пояса. Предполагается, что оно настроено и учитывает переход на летнее время.
Тип возвращаемых данных
datetimeoffset с точностью до долей секунды аргумента DATETIMEOFFSET.
Замечания
SWITCHOFFSET используется для выбора значения datetimeoffset в смещении часового пояса, отличающегося от первоначально сохраненного смещения часового пояса. SWITCHOFFSET не обновляет хранящееся значение time_zone.
Функция SWITCHOFFSET может использоваться для обновления столбца datetimeoffset.
Примеры
В следующем примере используется функция SWITCHOFFSET для вывода смещения часового пояса, отличающегося от значения, хранящегося в базе данных.
CREATE TABLE dbo.test
(
ColDatetimeoffset datetimeoffset
);
GO
INSERT INTO dbo.test
VALUES ('1998-09-20 7:45:50.71345 -5:00');
GO
SELECT SWITCHOFFSET (ColDatetimeoffset, '-08:00')
FROM dbo.test;
GO
--Returns: 1998-09-20 04:45:50.7134500 -08:00
SELECT ColDatetimeoffset
FROM dbo.test;
--Returns: 1998-09-20 07:45:50.7134500 -05:00