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'