TODATETIMEOFFSET (Transact-SQL)
Devuelve un valor de tipo datetimeoffset que se traduce a partir de una expresión datetime2.
Sintaxis
TODATETIMEOFFSET ( expression , time_zone )
Argumentos
expression
Es una expresión que se resuelve en un valor de tipo datetime2.Nota
La expresión no puede ser del tipo text, ntext o image, ya que estos tipos no se pueden convertir implícitamente en varchar o nvarchar.
time_zone
Es una expresión que representa el ajuste de zona horaria en minutos. El intervalo es de 14 a -13. La expresión se interpreta en la hora local para el valor time_zone especificado.Nota
Si la expresión es una cadena de caracteres, debe tener el formato {+|-}TZH:THM.
Tipo devuelto
datetimeoffset. La precisión fraccionaria es la misma que la del argumento datetime.
Ejemplos
A. Cambiar el ajuste de zona horaria de la fecha y hora actuales
En el ejemplo siguiente se cambia el ajuste de zona horaria de la fecha y hora actuales a la zona horaria -07:00.
DECLARE @todaysDateTime Datetime2
SELECT @todaysDateTime = GetDate();
SELECT TODATETIMEOFFSET (@todaysDateTime, '-07:00')
-- RETURNS 2007-08-30 15:51:34.7030000 -07:00
B. Cambiar el ajuste de zona horaria en minutos
En el ejemplo siguiente se cambia la zona horaria actual a -120 minutos.
DECLARE @todaysDate Datetime2
SELECT @todaysDate = GetDate();
SELECT TODATETIMEOFFSET (@todaysDate, -120)
-- RETURNS 2007-08-30 15:52:37.8770000 -02:00
C. Agregar un ajuste de zona horaria de 13 horas
En el ejemplo siguiente se agrega un ajuste de zona horaria de 13 horas a una fecha y hora.
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