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

Comment obtenir le mois à partir d'une date dans T-SQL

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' ).