Si tiene una marca de tiempo de Unix, puede usar DATETIME()
de SQLite función con el unixepoch
modificador para calcular la fecha y la hora reales.
Alternativamente, puede usar DATE()
función si solo necesita la fecha para ser devuelto. Y también es posible usar el TIME()
función para devolver solo la porción de tiempo.
Obtener la fecha y la hora
Aquí hay un ejemplo del uso de DATETIME()
función con el unixepoch
modificador:
SELECT DATETIME(1793956207, 'unixepoch');
Resultado:
2026-11-06 09:10:07
Obtener la fecha
Podemos usar el DATE()
función si solo necesitamos que se devuelva la fecha:
SELECT DATE(1793956207, 'unixepoch');
Resultado:
2026-11-06
Obtener el tiempo
Usando el TIME()
la función devuelve solo la porción de tiempo:
SELECT TIME(1793956207, 'unixepoch');
Resultado:
09:10:07
Compensa tu zona horaria local
También puede agregar el localtime
modificador para ajustar la salida a su zona horaria local:
SELECT DATETIME(1793956207, 'unixepoch', 'localtime');
Resultado:
2026-11-06 19:10:07
La localtime
El modificador asume que el valor de tiempo especificado está en hora universal coordinada (UTC) y ajusta ese valor de tiempo para que esté en localtime
.
El auto
Modificador
Desde SQLite 3.38.0, podemos usar el auto
modificador en lugar de unixepoch
modificador:
SELECT DATETIME(1793956207, 'auto');
Resultado:
2026-11-06 09:10:07
El modificador automático hace que el valor se interprete como un número de día juliano o una marca de tiempo de Unix, según el valor real.
Si el valor está entre 0.0
y 5373484.499999
, entonces se interpreta como un número de día juliano (correspondiente a fechas entre -4713-11-24 12:00:00
y 9999-12-31 23:59:59
, inclusive). Para valores numéricos fuera del rango de números de días julianos válidos, pero dentro del rango de -210866760000
a 253402300799
, el auto
El modificador hace que el valor se interprete como una marca de tiempo de Unix. Otros valores numéricos están fuera de rango y provocan un retorno NULL.