Kom navnene på måneder i en datointerval er en langt mindre kompliceret opgave, end det først kan synes , selv om det kan gøres på lidt forskellige måder afhængig af smag af SQL du bruger. Med T - SQL det kan gøres med DATENAME funktion og en tabel variabel , mens med MySQL du ville bruge månedsnavn funktion og en midlertidig tabel . Instruktioner
Få Måned Navne i T-SQL
1
Erklær start -og slutdato variabler , samt en tabel variabel til midlertidigt at holde måneden navne, for eksempel:
< p> DECLARE @ starte DATETIME , DECLARE @ ende DATETIME ,
DECLARE @ måneders TABEL ( MONTH_NAME VARCHAR (30 )),
SET @ start = '2011 -01- 01 ' , SET @ ende = '2011 -12- 01 ' ,
2
gentage gennem måneder , tilføjer måneden navne til bordet variabel ved hjælp af DATENAME og DateAdd funktioner , for eksempel : Hej
DECLARE @ starte DATETIME , DECLARE @ ende DATETIME ,
DECLARE @ måneders TABEL ( MONTH_NAME VARCHAR (30 )),
SET @ start = '2011 -01- 01 ' , SET @ ende =' 2011-12-01 «
MENS ( @ Start < @ ende) BEGIN
INSERT INTO @ monthsSELECT DATENAME (måned , @ start) ,
SET @ starten = DateAdd (måned , 1, @ start) ,
END
3
sidst vælge listen over måneden navne fra bordet variable , for eksempel : Hej
DECLARE @ starte DATETIME , DECLARE @ ende DATETIME ,
DECLARE @ måneders TABEL ( MONTH_NAME VARCHAR (30 )),
SET @ start = '2011 -01- 01 ' ; SET @ ende = '2011 -12- 01 ' ,
MENS ( @ Start < @ ende) BEGIN
INSERT INTO @ monthsSELECT DATENAME (måned , @ start) ,
< p > SET @ start = DateAdd (måned , 1, @ start) ,
END
SELECT * FROM @ måneder
Få måned navne i MySQL < br >
4
Erklær start-og slutdato variabler , og derefter oprette en midlertidig tabel til at holde månedsnavne , for eksempel : Hej
DECLARE @ starte DATETIME , DECLARE @ ende DATETIME ;
CREATE midlertidig tabel TempMonths ( MONTH_NAME VARCHAR (30) ),
SET @ start = '2011 -01- 01 ' , SET @ ende = '2011 -12- 01' ,
< br > 5
gentage gennem måneder , tilføjer måneden navne til den midlertidige tabel ved hjælp af månedsnavn og DATE_ADD funktioner , for eksempel : Hej
DECLARE @ starte DATETIME , DECLARE @ ende DATETIME ;
CREATE midlertidig tabel TempMonths ( MONTH_NAME VARCHAR (30 )),
SET @ start = '2011 -01- 01 ' , SET @ ende = '2011 -12- 01' ,
( @ start < @ ende) BEGIN
INSERT INTO TempMonthsSELECT månedsnavn ( @ start) ,
SET @ start = DATE_ADD ( @ start, INTERVAL 1 måned) ,
eND
6
sidst vælge listen over måneden navne og oprydning den midlertidige tabel , for eksempel : Hej
DECLARE @ starte DATETIME , DECLARE @ ende DATETIME ,
CREATE midlertidig tabel TempMonths ( MONTH_NAME VARCHAR (30) ),
SET @ start = '2011 -01- 01 ' , SET @ ende = '2011 -12- 01' ,
( @ start < @ ende) BEGIN
INSERT INTO TempMonthsSELECT månedsnavn ( @ start) ,
SET @ start = DATE_ADD ( @ start, INTERVAL 1 måned) ,
eND < br >
SELECT * FROM TempMonths ,
DROP TABLE TempMonths ,