La pregunta es cómo determinar, dado un rango de fechas, cuántos días domingos hay.
SQL Server no tiene una función propia como tal, así que podemos utilizar la siguiente
función la cual le enviamos el rango de fechas.
CREATE FUNCTION fncCuantosDomingosHay (@inicio DATETIME, @fin DATETIME) RETURNS integer AS BEGIN DECLARE @dia_sem INT DECLARE @domingos INT DECLARE @fecha datetime SET @fecha=@inicio SET @domingos=0 while @fecha <= @fin BEGIN SELECT @dia_sem=datepart(weekday,@fecha) IF @dia_sem=1 SET @domingos=@domingos+1 SELECT @fecha=dateadd(dd,1,@fecha) END return @domingos END --EJECUTAMOS LA FUNCIÓN declare @total integer exec @total= fncCuantosDomingosHay '2013/10/16','2013/11/15' print @total --Resultado: 4