PostgreSQL
 sql >> Database >  >> RDS >> PostgreSQL

Converti il ​​nome del mese in numero del mese in PostgreSQL

In PostgreSQL, se hai già un nome per un mese , ma vuoi convertire quel nome nel numero del mese , puoi farlo con EXTRACT() funzione.

Esempio 1:nome del mese intero

Ecco un esempio di base di conversione del nome di un mese nel numero del mese corrispondente.

SELECT EXTRACT(MONTH FROM TO_DATE('December', 'Month')) AS "Month Number";

Risultato:

 Month Number 
--------------
           12 

Esempio 2:nome breve del mese

Funziona anche sui nomi dei mesi brevi. In questo caso, abbrevia la stringa del modello da 'Month' a 'Mon' (secondo argomento di TO_DATE() funzione).

SELECT EXTRACT(MONTH FROM TO_DATE('Dec', 'Mon')) AS "Month Number";

Risultato:

 Month Number 
--------------
           12

Esempio 3:date più lunghe

Funziona anche quando fornisci una data più lunga (non solo il nome del mese).

SELECT EXTRACT(
    MONTH FROM TO_DATE('December 20, 2020', 'Month')
    ) AS "Month Number";

Risultato:

 Month Number 
--------------
           12

Esempio 4:utilizzo del timestamp

Ecco un esempio usando TO_TIMESTAMP() invece di TO_DATE() .

SELECT EXTRACT(MONTH FROM TO_TIMESTAMP('Dec 2020', 'Mon')) AS "Month Number";

Risultato:

 Month Number 
--------------
           12