- Categorias:
CONVERT_TIMEZONE¶
Converte um carimbo de data/hora em outro fuso horário.
Sintaxe¶
Argumentos¶
source_tzCadeia de caracteres especificando o fuso horário para o carimbo de data/hora de entrada. Necessário para carimbos de data/hora sem fuso horário (ou seja, TIMESTAMP_NTZ).
target_tzCadeia de caracteres especificando o fuso horário para o qual o carimbo de data/hora de entrada é convertido.
source_timestamp_ntzPara a versão de 3 argumentos, a cadeia de caracteres especificando o carimbo de data/hora a converter (deve ser TIMESTAMP_NTZ).
source_timestampPara a versão de 2 argumentos, a cadeia de caracteres especificando o carimbo de data/hora a converter (pode ser qualquer variante de carimbo de data/hora, incluindo TIMESTAMP_NTZ).
Retornos¶
Retorna um valor do tipo TIMESTAMP_NTZ, TIMESTAMP_TZ ou NULL:
Para a versão de 3 argumentos, retorna um valor do tipo TIMESTAMP_NTZ.
Para a versão de 2 argumentos, retorna um valor do tipo TIMESTAMP_TZ.
Se algum argumento for NULL, retorna NULL.
Notas de uso¶
O formato de exibição dos carimbos de data/hora na saída é determinado pelo formato de saída do carimbo de data/hora para a sessão atual e pelo tipo de dados do valor do carimbo de data/hora retornado.
Para a versão de 3 argumentos, a hora local no resultado representa o mesmo momento no tempo que a hora local de entrada no fuso horário de entrada, mas no fuso horário de destino.
Para a versão de 2 argumentos, o argumento
source_timestampnormalmente inclui o fuso horário. Se o valor for do tipo TIMESTAMP_TZ, o fuso horário é tirado de seu valor. Caso contrário, é utilizado o fuso horário da sessão atual.Para
source_tzetarget_tz, é possível especificar um nome de fuso horário ou um nome de link do lançamento 2025b do banco de dados de fuso horário IANA (por exemplo,America/Los_Angeles,Europe/London,UTC,Etc/GMTe assim por diante).Nota
Os nomes de fuso horário diferenciam maiúsculas de minúsculas e precisam ser colocados entre aspas simples (por exemplo,
'UTC').O Snowflake não oferece suporte à maioria das abreviações de fuso horário (por exemplo,
PDT,ESTetc.) porque uma determinada abreviação pode se referir a um dos vários fusos horários diferentes. Por exemplo,CSTpode se referir ao Horário Padrão Central na América do Norte (UTC-6), ao Horário Padrão de Cuba (UTC-5) e ao Horário Padrão da China (UTC8).
Exemplos¶
Para usar o formato de saída de carimbo de data/hora padrão para os carimbos de data/hora retornados nos exemplos, remova a definição do parâmetro TIMESTAMP_OUTPUT_FORMAT na sessão atual:
Exemplos que especificam um fuso horário de origem¶
Os exemplos a seguir usam a versão de 3 argumentos da função CONVERT_TIMEZONE e especificam um valor source_tz. Esses exemplos retornam valores TIMESTAMP_NTZ.
Converter a hora local em Los Angeles para a hora local correspondente em Nova York:
Converter uma hora local em Varsóvia para o horário correspondente em UTC:
Exemplos que não especificam um fuso horário de origem¶
Os exemplos a seguir usam a versão de 2 argumentos da função CONVERT_TIMEZONE. Esses exemplos retornam valores TIMESTAMP_TZ. Portanto, os valores retornados incluem um deslocamento que mostra a diferença entre o fuso horário do carimbo de data/hora e o fuso horário Tempo Universal Coordenado (UTC). Por exemplo, o fuso horário America/Los_Angeles tem um deslocamento de -0700, indicando que está sete horas atrás do UTC.
Converter uma cadeia de caracteres especificando um valor TIMESTAMP_TZ para um fuso horário diferente:
Visualize a hora local atual em diferentes fusos horários: