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

2 funktioner, der henter dagen, måneden og året fra en dato i Oracle

Oracle Database har TO_CHAR(datetime) funktion, der gør det muligt for os at hente forskellige datodele fra en datetime-værdi.

Der er også EXTRACT(datetime) funktion, der udtrækker en bestemt dato- og tidsenhed (f.eks. dag, måned, år osv.).

TO_CHAR(datetime) Funktion

Vi kan få dagen, måneden og året fra en dato ved at overføre den relevante formatmodel til TO_CHAR(datetime) fungere.

Eksempel:

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

Resultat:

Wednesday, 26 September 2035

I dette tilfælde specificerede min formatmodel forskellige datodele; det fulde dagsnavn, "dagen i måneden", månedsnavnet og året. Ethvert af formatelementerne kan udelades, og et hvilket som helst antal andre formatelementer kan tilføjes.

Vi kan endda adskille hver datokomponent ved at foretage flere kald til funktionen, hver med et forskelligt formatelement:

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;

Resultat:

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

Se denne fulde liste over Datetime Format Elements i Oracle for en liste over formatelementer, der kan bruges til at formatere datetime-værdier med denne funktion.

EXTRACT(datetime) Funktion

Than EXTRACT(datetime) funktion er en anden måde at returnere dagen, måneden eller året fra en datetime-værdi. Denne funktion udtrækker kun én datodel ad gangen.

Eksempel:

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

Resultat:

2027

I dette tilfælde udtog jeg året fra datoen.

Her er et eksempel, der uddrager dagen, måneden og året:

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;

Resultat:

   DAY    MONTH    YEAR 
______ ________ _______ 
     3       10    2027

Se EXTRACT (datetime) funktion i Oracle for en liste over datodele, der kan udtrækkes med denne funktion.


  1. Oracle 11g - Hvordan optimerer man langsom parallelindsætningsvalg?

  2. dvale dialekt for oracle 12c

  3. Sådan kontrolleres MySQL-databasestørrelse i Linux

  4. Sådan transponeres mysql-tabelrækker til kolonner