SWITCHOFFSET (Transact-SQL)
Retorna um valor datetimeoffset que é alterado do deslocamento de fuso horário armazenado para um novo deslocamento especificado.
Para obter uma visão geral de todos os tipos de dados e funções de data e hora do Transact-SQL, consulte Funções Date e Time (Transact-SQL). Para obter informações e exemplos comuns aos tipos de dados e funções de data e hora, consulte Usando dados de data e hora.
Sintaxe
SWITCHOFFSET ( DATETIMEOFFSET, time_zone )
Argumentos
DATETIMEOFFSET
É uma expressão que pode ser resolvida em um valor de datetimeoffset(n).time_zone
É uma cadeia de caracteres no formato [+|-]TZH:TZM ou um inteiro assinado (de minutos) que representa o deslocamento de fuso horário e que se pressupõe estar ajustado e reconhecer horário de verão.
Tipo de retorno
datetimeoffset com a precisão fracionária do argumento DATETIMEOFFSET.
Comentários
Use SWITCHOFFSET para selecionar um valor de datetimeoffset em um deslocamento de fuso horário diferente do deslocamento armazenado originalmente. SWITCHOFFSET não atualiza o valor de time_zone armazenado.
SWITCHOFFSET pode ser usado para atualizar uma coluna datetimeoffset.
Exemplos
O exemplo a seguir usa SWITCHOFFSET para exibir um deslocamento de fuso horário diferente do valor armazenado no banco de dados.
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