Dans PostgreSQL, si vous avez déjà un nom de mois , mais vous voulez convertir ce nom en mois nombre , vous pouvez le faire avec le EXTRACT()
fonction.
Exemple 1 :Nom complet du mois
Voici un exemple basique de conversion d'un nom de mois en son numéro de mois correspondant.
SELECT EXTRACT(MONTH FROM TO_DATE('December', 'Month')) AS "Month Number";
Résultat :
Month Number -------------- 12
Exemple 2 :Nom du mois court
Cela fonctionne également sur les noms de mois courts. Dans ce cas, raccourcissez simplement la chaîne du modèle de 'Month'
à 'Mon'
(deuxième argument du TO_DATE()
fonction).
SELECT EXTRACT(MONTH FROM TO_DATE('Dec', 'Mon')) AS "Month Number";
Résultat :
Month Number -------------- 12
Exemple 3 :Dates plus longues
Cela fonctionne également lorsque vous fournissez une date plus longue (pas seulement le nom du mois).
SELECT EXTRACT( MONTH FROM TO_DATE('December 20, 2020', 'Month') ) AS "Month Number";
Résultat :
Month Number -------------- 12
Exemple 4 :Utilisation de l'horodatage
Voici un exemple utilisant TO_TIMESTAMP()
au lieu de TO_DATE()
.
SELECT EXTRACT(MONTH FROM TO_TIMESTAMP('Dec 2020', 'Mon')) AS "Month Number";
Résultat :
Month Number -------------- 12