Retorna a hora atual como um valor BIGINT em microssegundos, ajustada ao fuso horário especificado.
Sintaxe
BIGINT CURRENT_MICROS([STRING <time_zone>])
-- Example: Returns 62747524000.
SELECT CURRENT_MICROS('Asia/Shanghai');
Parâmetros
time_zone: Opcional. Valor STRING que especifique o fuso horário. Formatos aceitos:
|
Formato |
Exemplo |
|
Nome de fuso horário IANA |
|
|
Deslocamento UTC (HH:MM) |
|
|
Deslocamento UTC (abreviado) |
|
Se omitido, a função usa o fuso horário da sessão ou do projeto atual. O fuso horário padrão do projeto é UTC+08:00.
Valor de retorno
Valor BIGINT que representa a hora atual em microssegundos. Retorna NULL se a entrada for NULL.
Observações de uso
Entrada NULL: Passar
NULLcomo argumento retornaNULL, e não o resultado do fuso horário padrão.
Exemplos
Os exemplos a seguir usam 2025-09-24 17:25:18.381 como hora de referência, com o fuso horário do projeto definido como Asia/Shanghai.
Exemplo 1: Usar o fuso horário padrão da sessão ou do projeto
-- Returns 62718381000.
SELECT CURRENT_MICROS();
Exemplo 2: Especifique um fuso horário
-- Returns 55518381000 (Bangladesh time, UTC+06:00).
SELECT CURRENT_MICROS('Asia/Dhaka');
-- Equivalent statements using different time zone formats:
-- SELECT CURRENT_MICROS('UTC+06:00');
-- SELECT CURRENT_MICROS('+06');
Exemplo 3: Passar NULL como argumento
-- Returns NULL.
SELECT CURRENT_MICROS(NULL);
Exemplo 4: Converter o resultado em uma string formatada
Use FORMAT_TIME para converter o resultado BIGINT em uma string de hora legível.
-- Returns 17:25:18.381 (Asia/Shanghai time zone).
SELECT FORMAT_TIME(CURRENT_MICROS('Asia/Shanghai'), '%H:%M:%S.ff3');
-- Returns 15:25:18 (Asia/Dhaka time zone).
SELECT FORMAT_TIME(CURRENT_MICROS('Asia/Dhaka'), '%H:%M:%S');
Funções relacionadas
CURRENT_MICROS é uma função de tempo. Para outras funções de data e hora, consulte Funções de data.