- Categorias:
Funções de contexto (General)
CURRENT_TIMESTAMP¶
Retorna o carimbo de data/hora atual para o sistema no fuso horário local.
- Aliases:
Sintaxe¶
CURRENT_TIMESTAMP( [ <fract_sec_precision> ] )
CURRENT_TIMESTAMP
Argumentos¶
fract_sec_precision
Este argumento opcional indica a precisão com que se deve reportar o tempo. Por exemplo, um valor de 3 diz para usar 3 dígitos após o ponto decimal (ou seja, para especificar o tempo com uma precisão de milissegundos).
A precisão padrão é 9 (nanossegundos).
Os valores válidos variam de 0 - 9. Entretanto, a maioria das plataformas não oferece suporte à verdadeira precisão de nanossegundos; a precisão que você obtém pode ser menor do que a precisão especificada. Na prática, a precisão é normalmente de aproximadamente milissegundos (3 dígitos), no máximo.
Nota
Os segundos fracionários só são exibidos se tiverem sido explicitamente definidos no parâmetro TIMESTAMP_OUTPUT_FORMAT da sessão (por exemplo,
'YYYY-MM-DD HH24:MI:SS.FF'
).
Retornos¶
Retorna a hora atual do sistema. O tipo de dados do valor retornado é TIMESTAMP_LTZ.
Notas de uso¶
O ajuste do parâmetro TIMEZONE afeta o valor de retorno. O carimbo de data/hora retornado está no fuso horário da sessão.
O ajuste do parâmetro TIMESTAMP_TYPE_MAPPING afeta o valor de retorno. O carimbo de data/hora retornado está no tipo de carimbo de data/hora da sessão.
Não utilize o valor de retorno para ordenações de tempo precisas entre consultas simultâneas (processadas pelo mesmo warehouse virtual), pois as consultas podem ser atendidas por recursos de computação diferentes (no warehouse).
Para cumprir as normas ANSI, esta função pode ser chamada sem parênteses.
Os alias SYSTIMESTAMP e GETDATE diferem de CURRENT_TIMESTAMP nas seguintes formas:
Eles não oferecem suporte ao argumento
fract_sec_precision
.Essas funções devem ser chamadas entre parênteses.
Exemplos¶
Ajuste o formato de saída de hora para YYYY-MM-DD HH24:MI:SS.FF
:
ALTER SESSION SET TIMESTAMP_OUTPUT_FORMAT = 'YYYY-MM-DD HH24:MI:SS.FF';
Retorne o carimbo de data/hora atual com precisão de segundos fracionários definida como 2:
SELECT CURRENT_TIMESTAMP(2);+------------------------+ | CURRENT_TIMESTAMP(2) | |------------------------| | 2017-04-26 22:37:22.83 | +------------------------+
Retorne o carimbo de data/hora atual com precisão de segundos fracionários definida como 4:
SELECT CURRENT_TIMESTAMP(4);+--------------------------+ | CURRENT_TIMESTAMP(4) | |--------------------------| | 2017-04-26 22:37:25.3530 | +--------------------------+
Retorne o carimbo de data/hora atual com precisão de segundos fracionários definida como padrão (9):
SELECT CURRENT_TIMESTAMP;+-------------------------------+ | CURRENT_TIMESTAMP | |-------------------------------| | 2017-04-26 22:37:28.188000000 | +-------------------------------+