SQL kalenderlista

Populariserar en tabell med start och slutvärde för en månad.

begin
 declare sDate datetime;
 declare eDate datetime;
 declare ccDate datetime;
 create table #months(s_date datetime,e_date datetime);

set sDate = '2016-01-01';
 set eDate = '2016-12-01';
 set ccDate=sDate;

while eDate >= ccDate loop
 insert into #months(s_date,e_date) values(ccDate,dateadd(second,-1,dateadd(month,1,ccDate)));
 set ccDate = (select dateadd(month,1,ccDate));
 end loop;

select * from #months;
end
Resultat från script.
Resultat från script.