Oracle Database fornisce il SSSSS
elemento di formato che ci consente di ottenere il numero di secondi dopo la mezzanotte da un determinato valore datetime.
Esempio
Ecco un esempio da dimostrare:
SELECT
TO_CHAR(TIMESTAMP '2035-01-01 00:01:05', 'SSSSS')
FROM DUAL;
Risultato:
00065
Qui possiamo vedere che la parte temporale è 00:01:05
, il che significa che sono trascorse 1 minuto e 5 secondi dalle 00:00.
1 minuto e 5 secondi sono 65 secondi in totale.
Ecco un altro esempio:
SELECT
TO_CHAR(TIMESTAMP '2035-01-01 23:59:59', 'SSSSS')
FROM DUAL;
Risultato:
86399
Ora siamo dall'altra parte dell'estremo.
In realtà, potremmo fare un ulteriore passo avanti e restituire anche i secondi frazionari:
SELECT
TO_CHAR(TIMESTAMP '2035-01-01 23:59:59.999999999', 'SSSSSXFF')
FROM DUAL;
Risultato:
86399.999999999
In questo caso abbiamo usato il FF
format per restituire i secondi frazionari e la X
format per restituire il carattere radix. Questo carattere può essere diverso, a seconda delle impostazioni locali della sessione corrente.
Consulta Elenco degli elementi di formato DateTime in Oracle per un elenco completo degli elementi di formato che possono essere utilizzati per formattare i valori DateTime.