Sqlserver
 sql >> Base de Dados >  >> RDS >> Sqlserver

Selecione os últimos 30 dias com uma consulta sql


Você pode usar um CTE recursivo:
;WITH CTE AS
(
    SELECT convert(date,GETDATE()) sDate, DATENAME(DW, GETDATE()) sDayofWeek
    UNION ALL
    SELECT DATEADD(DAY,-1,sDate), DATENAME(DW, DATEADD(DAY,-1,sDate))
    FROM CTE
    WHERE sDate > GETDATE()-29
)
SELECT * FROM CTE