Sqlserver
 sql >> Base de données >  >> RDS >> Sqlserver

Trouver les lundis entre 2 dates

Cette procédure est indépendante des régions et des langues.

Veuillez noter la première ligne avec SET DATEFIRST 1 .

SET DATEFIRST 1; -- First day of the week is set to monday

DECLARE @DateFrom DateTime ='20150601', @DateTo DateTime = '20150630' ;

WITH CTE(dt)
AS
(
      SELECT @DateFrom
      UNION ALL
      SELECT DATEADD(d, 1, dt) FROM CTE
      WHERE dt < @DateTo
)
SELECT dt FROM CTE  where datepart ("dw", dt) = 1;