Ecco un'opzione per restituire il timestamp Unix quando si utilizza Oracle Database.
Il timestamp Unix (noto anche come Unix Epoch time, Unix time o POSIX time) è il numero di secondi trascorsi dalle 00:00:00 di giovedì 1 gennaio 1970, Coordinated Universal Time (UTC).
Ottieni il timestamp Unix corrente
Ecco un esempio di come ottenere il timestamp Unix dalla data e dall'ora correnti:
SELECT (CAST (systimestamp at time zone 'UTC' as date) - date '1970-01-01') * 86400
FROM DUAL;
Esempio di risultato:
1650253093.999999999999999999999999999998
Convertire un timestamp specificato in un timestamp Unix
Ecco un esempio in cui il timestamp di input è un valore hardcoded:
SELECT (
CAST(timestamp '2030-08-15 18:30:45' at time zone 'UTC' as date) - date '1970-01-01'
) * 86400
FROM DUAL;
Risultato:
1913074244.999999999999999999999999999997