Thursday, January 09, 2014

SQL create dates for a range on the go

SQL - Create dates for a range on the go



set @fromDate = '2011-01-02';
set @interval_window = 365;

select @fromDate + interval a + b + c day as dates
from
(select 0 a union select 1 union select 2 union select 3 union select 4 union select 5 union select 6 union select 7 union select 8 union select 9) d,
(select 0 b union select 10 union select 20 union select 30 union select 40 union select 50 union select 60 union select 70 union select 80 union select 90) m,
(select 0 c union select 100 union select 200 union select 300) y
where @interval_window > a + b + c ;