получить дату всех суббот в данном году-sql server

Мне нужно получить список всех субботних дат в данном году.

Я видел сообщение 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'

был оракул (это было в воскресенье и 2009, например)

спасибо. - Том!--2-->

2 ответов


за 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

объявить @D datetime выберите @d = '20100101' -- '20090101', если вы хотите 2009 etc

выберите dateadd (dd, number,@d) из master..spt_values где type = 'p' и datename (weekday, (dateadd (dd, number, @d))) in ('Saturday', 'Tuesday' /* укажите название дня*/)