TODATETIMEOFFSET (Transact-SQL)
Retorna um valor datetimeoffset que é convertido de uma expressão datetime2.
Sintaxe
TODATETIMEOFFSET ( expression , time_zone )
Argumentos
expression
É uma expressão resolvida em um valor datetime2.
ObservaçãoA expressão não pode ser do tipo text, ntext ou image pois esses tipos não podem ser convertidos implicitamente em varchar ou nvarchar.
time_zone
É uma expressão que representa o deslocamento de fuso horário em minutos. O intervalo é de +14 a -13. A expressão é interpretada em hora local para time_zone especificado.
ObservaçãoSe a expressão for uma cadeia de caracteres, deve estar no formato {+|-}TZH:THM.
Tipo de retorno
datetimeoffset. A precisão fracionária é igual à do argumento datetime.
Exemplos
A. Alterando o deslocamento de fuso horário da data e da hora atuais
O exemplo seguinte altera o deslocamento de fuso horário da data e da hora atuais para o fuso horário -07:00.
DECLARE @todaysDateTime Datetime2
SELECT @todaysDateTime = GetDate();
SELECT TODATETIMEOFFSET (@todaysDateTime, '-07:00')
-- RETURNS 2007-08-30 15:51:34.7030000 -07:00
B. Alterando o deslocamento de fuso horário em minutos
O exemplo seguinte altera o fuso horário atual para -120 minutos.
DECLARE @todaysDate Datetime2
SELECT @todaysDate = GetDate();
SELECT TODATETIMEOFFSET (@todaysDate, -120)
-- RETURNS 2007-08-30 15:52:37.8770000 -02:00
C. Adicionando um deslocamento de fuso horário de 13 horas
O exemplo seguinte adiciona um deslocamento de fuso horário de 13 horas a uma data e 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
.gif)