- IF OBJECT_ID(N'dbo.calendar_dates') IS NOT NULL
- DROP VIEW dbo.calendar_dates;
- GO
- /*
- http://yabele.blogspot.de/2016/08/how-to-generate-range-of-dates.html
- */
- CREATE VIEW dbo.calendar_dates
- AS
- WITH
- R10 AS (
- SELECT * FROM (VALUES (1),(2),(3),(4),(5),(6),(7),(8),(9),(10)) AS T(I)
- )
- SELECT TOP(DATEDIFF(DAY, '2000-01-01', CAST(YEAR(GETDATE()) + 1 AS CHAR(4)) + '-12-31'))
- date_value = DATEADD(DAY, ROW_NUMBER() OVER(ORDER BY (SELECT 1)), '1999-12-31')
- FROM
- R10 T1 CROSS JOIN R10 T2 CROSS JOIN R10 T3 CROSS JOIN R10 T4 CROSS JOIN R10 T5 CROSS JOIN R10 T6
- /*
- SELECT *
- FROM dbo.calendar_dates
- ORDER BY date_value;
- */
- ;
Wednesday, 24 August 2016
MSSQL - How to generate range of Dates
There the text of VIEW to generate range of dates between 1.January 2000 and 31.December next year:
Subscribe to:
Posts (Atom)