11
votes

Get Date de tous les samedis au cours d'une année donnée - SQL Server

J'ai besoin d'obtenir une liste de toutes les dates du samedi au cours d'une année donnée.

J'ai vu un poste Oracle qui va à l'encontre d'une table qui avait une "table du calendrier fiscal" mais je n'ai pas pu réussir à Conversion et j'ai une table contenant un ensemble de dates que je veux enquêter. xxx

était l'oracle (c'était pour dimanche et 2009 par exemple)

beaucoup merci. -Tom


0 commentaires

3 Réponses :


18
votes

Pour l'année 2010, vous pouvez faire ce xxx


1 commentaires

Wow! Cela fonctionne même pour le lundi en 2018 aussi! Merci ;)



0
votes

déclarer @D DateTime Sélectionnez @D = '20100101' - '20090101' Si vous le souhaitez 2009, etc

Sélectionnez Daaddd (DD, Number, @ D) de Master..spt_Values où type = 'p' et nom de datename (jour de semaine, (daadd (DDADD (DD, numéro, @D))) dans ("samedi", "mardi" / * Spécifie le nom de la journée * /)


0 commentaires

0
votes

@sqlmenace Il s'agit de montrer tous les samedis, espérons que cela aide quelqu'un, car j'essaie de créer un calendrier de décalage à l'aide de SQL. 3 jours sur, 2 jours de congé et 2 jours sur, à partir du premier samedi de l'année.

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

select dateadd(dd,number,@d) as "Day" from master..spt_values
where type = 'p'
and year(dateadd(dd,number,@d))=year(@d)
and DATEPART(dw,dateadd(dd,number,@d)) = 7 and DATEPART(WK,DATEADD(dd,number,@d)) % 2 = 0; 


0 commentaires