In 2005, 2008
declare @y char(4), @d varchar(20)
select @y = '2008', @d = 'Monday'
;with days as (
select 0 as d union all
select d + 1 from days where d < 370
)
select convert(varchar(10), dateadd(d, d, @y + '0101'), 101) from days
where year(dateadd(d, d, @y + '0101')) = @y
and datename(dw,dateadd(d, d, @y + '0101')) = @d
option (maxrecursion 400);
Mikhail
"sqlman" wrote in message
> Here is a puzzle-like task I am trying to solve:
>
> Get SQL SELECT statement which will give a list of all dates in a
> given year. Optionally: only include Mondays.
>
> Any ideas?
>
> Thanks! >> Stay informed about: SQL query puzzle