TODATETIMEOFFSET (Transact-SQL)

Se aplica a:SQL ServerAzure SQL DatabaseAzure SQL Managed InstanceAzure Synapse AnalyticsAnalytics Platform System (PDW)

Devuelve un valor de tipo datetimeoffset que se traduce a partir de una expresión datetime2.

Convenciones de sintaxis de Transact-SQL

Sintaxis

TODATETIMEOFFSET ( datetime_expression , timezoneoffset_expression )  

Nota:

Para ver la sintaxis de Transact-SQL para SQL Server 2014 (12.x) y versiones anteriores, consulte Versiones anteriores de la documentación.

Argumentos

datetime_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.

timezoneoffset_expression
Es una expresión que representa el desplazamiento de zona horaria en minutos (si es un entero), por ejemplo -120, o las horas y los minutos (si es una cadena), como "+13:00". El intervalo es de +14 a -14 (en horas). La expresión se interpreta en la hora local para el valor timezoneoffset_expression especificado.

Nota

Si la expresión es una cadena de caracteres, debe tener el formato {+|-}TZH:THM.

Tipo de valor devuelto

datetimeoffset. La precisión fraccionaria es la misma que la del argumento datetime_expression.

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;  
SET @todaysDateTime = GETDATE();  
SELECT TODATETIMEOFFSET (@todaysDateTime, '-07:00');  
-- RETURNS 2019-04-22 16:23:51.7666667 -07:00  

B. Cambiar el ajuste de zona horaria en minutos

En el ejemplo siguiente se cambia la zona horaria actual a -120 minutos.

SELECT TODATETIMEOFFSET(SYSDATETIME(), -120)
-- RETURNS: 2019-04-22 11:39:21.6986813 -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.

SELECT TODATETIMEOFFSET(SYSDATETIME(), '+13:00')
-- RETURNS: 2019-04-22 11:39:29.0339301 +13:00

Vea también

CAST y CONVERT (Transact-SQL)
Tipos de datos y funciones de fecha y hora (Transact-SQL)
AT TIME ZONE (Transact-SQL)