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

Comment obtenir le mois à partir d'une date dans MySQL

Problème :

Vous souhaitez obtenir le mois à partir d'une colonne date/datetime dans une base de données MySQL.

Exemple :

Notre base de données contient une table nommée apartment_rental avec des données dans les colonnes id , address , floor , et start_date .

identifiant adresse étage date_début
1 700, rue Oak 2 2019-03-20
2 295, rue Principale 3 2019-05-31
3 506 route nationale 1 2019-01-03
4 3949 Route 31 1 2019-02-01

Pour chaque appartement disponible, obtenez l'adresse, l'étage et le mois où il est disponible. Obtenez uniquement le mois à partir de la start_date colonne.

Solution :

Nous utiliserons le MONTH() une fonction. Voici la requête que vous écririez :

SELECT address,
       floor,
       MONTH(start_date)
         AS  start_month
FROM apartment_rental;

Voici le résultat de la requête :

adresse étage start_month
700, rue Oak 2 3
295, rue Principale 3 5
506 route nationale 1 1
3949 Route 31 1 2

Discussion :

Utilisez le MONTH() fonction pour récupérer un mois à partir d'une colonne date/datetime/timestamp dans MySQL. Cette fonction ne prend qu'un seul argument – ​​soit une expression qui renvoie une valeur date/dateheure/horodatage, soit le nom d'une colonne date/dateheure/horodatage. (Dans notre exemple, nous utilisons le start_date colonne de date type de données).

MONTH() renvoie le mois sous la forme d'un entier compris entre 1 et 12 (1 correspond à janvier et 12 à décembre). Dans notre exemple, l'appartement au 700 Oak Street commencera à louer au mois 3 car sa date de début est '2019-03-20'