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

2 fonctions qui obtiennent le jour, le mois et l'année à partir d'une date dans Oracle

Oracle Database a le TO_CHAR(datetime) fonction qui nous permet d'obtenir différentes parties de date à partir d'une valeur datetime.

Il y a aussi le EXTRACT(datetime) fonction qui extrait une unité de date/heure spécifique (par exemple, jour, mois, année, etc.).

Le TO_CHAR(datetime) Fonction

Nous pouvons obtenir le jour, le mois et l'année à partir d'une date en transmettant le modèle de format applicable à le TO_CHAR(datetime) une fonction.

Exemple :

SELECT TO_CHAR(DATE '2035-09-26', 'Day, DD Month YYYY')
FROM DUAL;

Résultat :

Wednesday, 26 September 2035

Dans ce cas, mon modèle de format spécifiait diverses parties de date ; le nom complet du jour, le numéro du "jour du mois", le nom du mois et l'année. N'importe lequel des éléments de format peut être omis, et n'importe quel nombre d'autres éléments de format peut être ajouté.

Nous pouvons même séparer chaque composant de date en effectuant plusieurs appels à la fonction, chacun avec un élément de format différent :

SELECT 
    TO_CHAR(DATE '2035-09-26', 'Day') AS Day,
    TO_CHAR(DATE '2035-09-26', 'DD') AS DD,
    TO_CHAR(DATE '2035-09-26', 'Month') AS Month,
    TO_CHAR(DATE '2035-09-26', 'YYYY') AS Year
FROM DUAL;

Résultat :

         DAY    DD        MONTH    YEAR 
____________ _____ ____________ _______ 
Wednesday    26    September    2035    

Voir cette liste complète des éléments de format Datetime dans Oracle pour une liste des éléments de format qui peuvent être utilisés pour formater les valeurs datetime avec cette fonction.

Le EXTRACT(datetime) Fonction

Til EXTRACT(datetime) La fonction est un autre moyen de renvoyer le jour, le mois ou l'année à partir d'une valeur datetime. Cette fonction n'extrait qu'une seule partie de date à la fois.

Exemple :

SELECT EXTRACT(YEAR FROM DATE '2027-10-03')
FROM DUAL;

Résultat :

2027

Dans ce cas, j'ai extrait l'année de la date.

Voici un exemple qui extrait le jour, le mois et l'année :

SELECT 
    EXTRACT(DAY FROM DATE '2027-10-03') AS Day,
    EXTRACT(MONTH FROM DATE '2027-10-03') AS Month,
    EXTRACT(YEAR FROM DATE '2027-10-03') AS Year
FROM DUAL;

Résultat :

   DAY    MONTH    YEAR 
______ ________ _______ 
     3       10    2027

Voir Fonction EXTRACT (datetime) dans Oracle pour une liste des parties de date pouvant être extraites avec cette fonction.