Se você tem um timestamp Unix, você pode usar o
DATETIME()
do SQLite função com o unixepoch
modificador para calcular a data e hora reais. Você também pode usar o
DATE()
função se você precisar apenas que a data seja retornada. E também é possível usar o TIME()
função para retornar apenas a parte do tempo. Obter a data e hora
Aqui está um exemplo de uso do
DATETIME()
função com o unixepoch
modificador:SELECT DATETIME(1793956207, 'unixepoch');
Resultado:
2026-11-06 09:10:07
Obter a data
Podemos usar o
DATE()
função se precisarmos apenas que a data seja retornada:SELECT DATE(1793956207, 'unixepoch');
Resultado:
2026-11-06
Aproveite o tempo
Usando o
TIME()
função retorna apenas a parte do tempo:SELECT TIME(1793956207, 'unixepoch');
Resultado:
09:10:07
Compensar seu fuso horário local
Você também pode adicionar o
localtime
modificador para ajustar a saída para seu fuso horário local:SELECT DATETIME(1793956207, 'unixepoch', 'localtime');
Resultado:
2026-11-06 19:10:07
O
localtime
modificador assume que o valor de tempo especificado está em Tempo Coordenado Universal (UTC) e ajusta esse valor de tempo para que esteja em localtime
. O auto
Modificador
A partir do SQLite 3.38.0, podemos usar o
auto
modificador no lugar do unixepoch
modificador:SELECT DATETIME(1793956207, 'auto');
Resultado:
2026-11-06 09:10:07
O modificador automático faz com que o valor seja interpretado como um número de dia juliano ou um carimbo de data/hora Unix, dependendo do valor real.
Se o valor estiver entre
0.0
e 5373484.499999
, ele será interpretado como um número de dia juliano (correspondente a datas entre -4713-11-24 12:00:00
e 9999-12-31 23:59:59
, inclusive). Para valores numéricos fora do intervalo de números válidos do dia juliano, mas dentro do intervalo de -210866760000
para 253402300799
, o auto
modificador faz com que o valor seja interpretado como um timestamp Unix. Outros valores numéricos estão fora do intervalo e causam um retorno NULL.