Comment les noms des mois dans une plage de dates est une tâche beaucoup moins compliqué qu'il peut d'abord apparaître , même s'il peut être fait de façon légèrement différente en fonction de la saveur de SQL vous utilisent . Avec T -SQL , il peut être fait avec la fonction DATENAME et une variable de table , tandis que de MySQL, vous devez utiliser la fonction MONTHNAME et une table temporaire. Instructions Obtenez des noms de mois en T -SQL
1
déclarer la date de début et variables de date de fin, ainsi qu'une variable de table pour stocker temporairement les noms des mois , par exemple:
< p> DECLARE @ début DATETIME ; DECLARE @ end DATETIME ;
DECLARE @ mois TABLE ( month_name VARCHAR ( 30) ) ;
SET @ start = '2011 -01- 01 ' ; SET @ end = '2011 -12- 01 ' ;
2
parcourir les mois , en ajoutant les noms des mois à la variable de table en utilisant le DATENAME et fonctions DATEADD , par exemple:
DECLARE @ commencer DATETIME ; DECLARE @ end DATETIME ;
DECLARE @ mois TABLE ( month_name VARCHAR ( 30) ) ;
SET @ start = '2011 -01- 01 ' ; SET @ end =' 2011-12-01 »;
TOUT (@ début < @ end ) BEGIN
INSERT INTO @ monthsSELECT DATENAME (mois, @ start) ;
SET @ départ = DATEADD ( mois , 1, @ start) ;
FIN
3
Enfin, sélectionnez la liste des noms de mois à partir de la variable de table , par exemple:
DECLARE @ début DATETIME ; DECLARE @ end DATETIME ;
DECLARE @ mois TABLE ( month_name VARCHAR ( 30) ) ;
SET @ start = '2011 -01- 01 ' ; SET @ end = '2011 -12- 01 ' ;
TOUT (@ début < @ end ) BEGIN
INSERT INTO @ monthsSELECT DATENAME (mois, @ start) ;
< p > SET @ start = DATEADD ( mois , 1, @ start) ;
End of
SELECT * FROM @ mois;
obtenir les noms de mois en MySQL < br > Hôtels 4
déclarer le début et variables de date de fin , puis créer une table temporaire pour contenir les noms des mois , par exemple:
DECLARE @ début DATETIME ; DECLARE @ fin DATETIME ;
CREATE TempMonths les tables temporaires ( month_name VARCHAR ( 30) );
SET @ start = '2011 -01- 01 ' ; SET @ end = '2011 -12- 01' ;
< br > 5
parcourir les mois , en ajoutant les noms des mois à la table temporaire à l'aide de la MONTHNAME et fonctions DATE_ADD , par exemple:
DECLARE @ début DATETIME ; DECLARE @ end DATETIME ;
CREATE TempMonths les tables temporaires ( month_name VARCHAR ( 30) ) ;
SET @ start = '2011 -01- 01 ' ; SET @ end = '2011 -12- 01' ;
TOUT ( @ début < @ end ) BEGIN
INSERT INTO TempMonthsSELECT MONTHNAME (@ start) ;
SET @ start = DATE_ADD (@ départ, INTERVALLE 1 mois) ;
fIN
6
Enfin , sélectionnez la liste des noms de mois et le nettoyage de la table temporaire , par exemple:
DECLARE @ début DATETIME ; DECLARE @ fin DATETIME ;
CREATE TempMonths les tables temporaires ( month_name VARCHAR ( 30) );
set @ start = '2011 -01- 01 ' ; SET @ end = '2011 -12- 01' ;
TOUT (@ début < @ end ) BEGIN
INSERT INTO TempMonthsSELECT MONTHNAME (@ start) ;
SET @ start = DATE_ADD (@ départ, INTERVALLE 1 mois) ;
END
SELECT * FROM TempMonths ;
DROP TempMonths de table;