2010-10-01 17 views
10

Ho bisogno di ottenere un elenco di tutte le date del sabato in un determinato anno.ottenere la data di tutti i sabati in un dato anno - sql server

Ho visto un post di oracolo che va contro un tavolo che ha "tabella di calendario fiscale" ma non sono riuscito a convertirlo né ho una tabella che contiene un insieme di date che voglio indagare.

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' 

era l'Oracle (è stato per Domenica e il 2009 ad esempio)

Molto grazie. -Tom

risposta

15

per l'anno 2010 si può fare questo

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 
+0

grazie mille !!! – TEEKAY

+0

Ancora utile nel 2015. Grazie! – FumblesWithCode

+0

Wow! questo funziona anche per il lunedì del 2018! Grazie ;) – Edward

Problemi correlati