SWITCHOFFSET (Transact-SQL)
Devuelve un valor datetimeoffset que ha cambiado el desfase de zona horaria almacenado por un nuevo desfase de zona horaria especificado.
Para obtener información general acerca de todos los tipos de datos y funciones de fecha y hora de Transact-SQL, consulte Tipos de datos y funciones de fecha y hora (Transact-SQL). Para obtener información y ejemplos que son comunes a los tipos de datos y funciones de fecha y hora, consulte Usar datos de fecha y hora.
Sintaxis
SWITCHOFFSET ( DATETIMEOFFSET, time_zone )
Argumentos
DATETIMEOFFSET
Es una expresión que se puede resolver como un valor datetimeoffset(n).time_zone
Es una cadena de caracteres en formato [+|-]TZH:TZM o un entero con signo (de minutos) que representa el desfase de zona horaria y se supone que reconoce y está ajustado para el horario de verano.
Tipo devuelto
datetimeoffset con la precisión fraccionaria del argumento DATETIMEOFFSET
Notas
Use SWITCHOFFSET para seleccionar un valor datetimeoffset en el desfase de zona horaria que sea diferente del que se almacenó originalmente. SWITCHOFFSET no actualiza el valor time_zone almacenado.
SWITCHOFFSET se puede usar para actualizar una columna datetimeoffset.
Ejemplos
En el siguiente ejemplo se usa SWITCHOFFSET para mostrar un desfase de zona horaria diferente del valor almacenado en la base de datos.
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