Oracle
 sql >> Database >  >> RDS >> Oracle

Come restituire il numero di secondi dopo mezzanotte nel database Oracle

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.