- Categorias:
Funções de contexto (General)
CURRENT_TIME¶
Retorna a hora atual do sistema.
- Aliases:
Sintaxe¶
CURRENT_TIME( [ <fract_sec_precision> ] )
CURRENT_TIME
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 TIME_OUTPUT_FORMAT da sessão (por exemplo,
'HH24:MI:SS.FF'
).
Retornos¶
Retorna um valor do tipo TIME.
Notas de uso¶
O ajuste do parâmetro TIMEZONE afeta o valor de retorno. A hora retornada está no fuso horário da sessão.
O formato de exibição das horas na saída é determinado pelo parâmetro de sessão TIME_OUTPUT_FORMAT (padrão
HH24:MI:SS
).Para cumprir o padrão ANSI, esta função pode ser chamada sem parênteses em instruções SQL.
Entretanto, se você estiver configurando uma variável Snowflake Scripting para uma expressão que chama a função (por exemplo,
my_var := <function_name>();
), é necessário incluir os parênteses. Para obter mais informações, consulte as notas de uso para funções de contexto.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).
Exemplos¶
Ajuste o formato de saída de hora como HH24:MI:SS.FF
, depois retorne a hora atual com precisão de segundos fracionários primeiro ajustada como 2, depois como 4, e depois como padrão (9):
ALTER SESSION SET TIME_OUTPUT_FORMAT = 'HH24:MI:SS.FF';
SELECT CURRENT_TIME(2);
+-----------------+
| CURRENT_TIME(2) |
|-----------------|
| 15:35:51.24 |
+-----------------+
SELECT CURRENT_TIME(4);
+-----------------+
| CURRENT_TIME(4) |
|-----------------|
| 15:36:53.5570 |
+-----------------+
SELECT CURRENT_TIME;
+--------------------+
| CURRENT_TIME |
|--------------------|
| 15:37:29.644000000 |
+--------------------+