Problème :
Vous souhaitez obtenir le mois à partir d'un champ de date dans une base de données SQL Server.
Exemple :
Notre base de données contient une table nommée Furniture
avec des données dans les colonnes Id
, Name
, et ProducedDate
.
Identifiant | Nom | Date de production |
---|---|---|
1 | canapé | 2018-01-10 |
2 | chaise | 2018-01-05 |
3 | bureau | 2018-06-20 |
4 | bibliothèque | 2018-11-15 |
Obtenons le mois à partir de la ProducedDate
de chaque produit et découvrez quels meubles ont été produits au cours d'un mois donné.
Solution :
Nous utiliserons le MONTH()
une fonction. Voici la requête que vous écririez :
SELECT Name, MONTH(ProducedDate) AS ProducedMonth FROM Furniture;
Voici le résultat de la requête :
Nom | MoisProduit |
---|---|
canapé | 1 |
chaise | 1 |
bureau | 6 |
bibliothèque | 11 |
Discussion :
Pour obtenir un mois à partir d'un champ de date dans SQL Server, utilisez le MONTH()
une fonction. Cette fonction ne prend qu'un seul argument :la date. Il peut s'agir d'un type de données date ou date et heure. (Dans notre exemple, la colonne ProducedDate
est du date type de données.) L'argument peut être un nom de colonne ou une expression. (Dans notre exemple, il s'agit de la ProducedDate
colonne).
MONTH()
renvoie le numéro du mois sous la forme d'un entier de 1 à 12. Pour le bureau article, le ProducedMonth
la valeur est 6 (renvoyé du 'YYYY-MM-DD'
date '2018-06-20'
).