Oracle
 sql >> Base de données >  >> RDS >> Oracle

Comment renvoyer le nombre de secondes après minuit dans la base de données Oracle

Oracle Database fournit le SSSSS élément de format qui nous permet d'obtenir le nombre de secondes après minuit à partir d'une valeur datetime donnée.

Exemple

Voici un exemple pour illustrer :

SELECT 
    TO_CHAR(TIMESTAMP '2035-01-01 00:01:05', 'SSSSS')
FROM DUAL;

Résultat :

00065

Ici, nous pouvons voir que la partie horaire est 00:01:05 , ce qui signifie qu'il est minuit passé 1 minute et 5 secondes.

1 minute et 5 secondes font 65 secondes au total.

Voici un autre exemple :

SELECT 
    TO_CHAR(TIMESTAMP '2035-01-01 23:59:59', 'SSSSS')
FROM DUAL;

Résultat :

86399

Nous sommes maintenant à l'autre bout de l'extrême.

En fait, nous pourrions aller plus loin et renvoyer également les fractions de seconde :

SELECT 
    TO_CHAR(TIMESTAMP '2035-01-01 23:59:59.999999999', 'SSSSSXFF')
FROM DUAL;

Résultat :

86399.999999999

Dans ce cas, nous avons utilisé le FF élément de format pour renvoyer les fractions de seconde, et le X élément de format pour renvoyer le caractère de base. Ce caractère peut être différent, selon les paramètres régionaux de la session en cours.

Voir Liste des éléments de format Datetime dans Oracle pour une liste complète des éléments de format pouvant être utilisés pour formater les valeurs datetime.