获取给定年份所有星期六的日期 - sql server

TEE*_*KAY 11 t-sql sql-server sql-server-2008

我需要获得给定年份中所有星期六日期的列表.

我已经看到一个oracle帖子违反了一个有"财政日历表"的表,但是我无法成功转换它,也没有一个包含我想调查的日期的表.

SELECT DATE DATES,TO_CHAR(DATE,'DAY') DAYS FROM FISCAL_CALENDAR
WHERE DATE_YEAR = 2009 AND
DATE BETWEEN TRUNC(SYSDATE,'YEAR') AND
ADD_MONTHS(TRUNC(SYSDATE,'YEAR'),12) -1 AND
TRIM(TO_CHAR(DATE,'DAY')) = 'SUNDAY'
Run Code Online (Sandbox Code Playgroud)

是甲骨文(这是周日和2009年的例子)

非常感谢.-Tom

SQL*_*ace 18

对于2010年,你可以做到这一点

declare @d datetime
select @d = '20100101'  --'20090101'  if you want 2009 etc etc

select dateadd(dd,number,@d) from master..spt_values
where type = 'p'
and year(dateadd(dd,number,@d))=year(@d)
and DATEPART(dw,dateadd(dd,number,@d)) = 7
Run Code Online (Sandbox Code Playgroud)