TODATETIMEOFFSET (Transact-SQL)

Aplica a:SQL ServerAzure SQL DatabaseAzure SQL Managed InstanceAzure Synapse AnalyticsEndpoint de analítica SQL en Microsoft FabricAlmacén en Microsoft FabricBase de datos SQL en Microsoft Fabric

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 )  

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