Aquí hay una opción para devolver la marca de tiempo de Unix cuando se usa Oracle Database.
La marca de tiempo de Unix (también conocida como hora de época de Unix, hora de Unix o hora POSIX) es la cantidad de segundos que han transcurrido desde las 00:00:00 del jueves 1 de enero de 1970, hora universal coordinada (UTC).
Obtener la marca de tiempo Unix actual
Este es un ejemplo de cómo obtener la marca de tiempo de Unix a partir de la fecha y hora actuales:
SELECT (CAST (systimestamp at time zone 'UTC' as date) - date '1970-01-01') * 86400
FROM DUAL;
Resultado de ejemplo:
1650253093.999999999999999999999999999998
Convertir una marca de tiempo especificada en una marca de tiempo Unix
Aquí hay un ejemplo donde la marca de tiempo de entrada es un valor codificado:
SELECT (
CAST(timestamp '2030-08-15 18:30:45' at time zone 'UTC' as date) - date '1970-01-01'
) * 86400
FROM DUAL;
Resultado:
1913074244.999999999999999999999999999997