Nedenfor er to funktioner, der kan bruges til at udtrække måneden fra en dato i Oracle Database.
EXTRACT()
Funktion
Du kan bruge EXTRACT(datetime)
funktion til at udtrække forskellige datetime dele fra en datetime værdi. Dette inkluderer måneden.
Her er et eksempel:
SELECT EXTRACT(MONTH FROM DATE '2030-12-25')
FROM DUAL;
Resultat:
12
Det er MONTH
søgeord, der udtrækker månedsdelen fra datoen. Vi kan få andre datodele ved at ændre det til det relevante søgeord. For eksempel YEAR
, DAY
, HOUR
, MINUTE
osv.
Vi kan også bruge funktionen med andre datetime-værdier, såsom TIMESTAMP
osv.
TO_CHAR(datetime)
Funktion
Vi kan også bruge TO_CHAR(datetime)
fungere som en alternativ metode til at få måneden fra en dato.
Denne funktion accepterer datetime eller intervalværdien som sit første argument og en formatmodel som sit andet argument. Funktionen konverterer derefter værdien til en datatype VARCHAR2
i det angivne format.
Formatmodellen angiver det format, som dato/intervalværdien skal returneres for. Formatmodellen består af et eller flere formatelementer. Dette gør os i stand til omhyggeligt at udforme resultaterne, så de afspejler vores ønskede format.
Hvis vi kun ønsker at returnere måneden, kan vi bruge et af formatelementerne til at udtrække måneden.
For at få måneden i 01-12-format skal du bruge MM
formatelement:
SELECT TO_CHAR(DATE '2027-08-03', 'MM')
FROM DUAL;
Resultat:
08
Fuldt måneds navn
For at få månedens fulde navn, brug MONTH
:
SELECT TO_CHAR(DATE '2027-08-03', 'MONTH')
FROM DUAL;
Resultat:
AUGUST
Kort månedsnavn
Brug MON
for at få månedens korte navn :
SELECT TO_CHAR(DATE '2027-08-03', 'MON')
FROM DUAL;
Resultat:
AUG