Sqlserver
 sql >> Datenbank >  >> RDS >> Sqlserver

Wie kann ich Werte pro Tag summieren und sie dann vom Startdatum bis zum letzten Datum im Kalender darstellen?

Eine andere Möglichkeit, den gesuchten Datumsbereich zu generieren, wäre so etwas wie .....

;WITH DateLimits AS
 (
    SELECT MIN(First_Date)   FirstDate
          ,MAX(Last_Update) LastDate
    FROM TableName 
 ),
DateRange AS 
(
 SELECT TOP (SELECT DATEDIFF(DAY,FirstDate,LastDate ) FROM DateLimits)
         DATEADD(DAY
              ,ROW_NUMBER() OVER (ORDER BY (SELECT NULL))
              , (SELECT FirstDate FROM DateLimits) 
              ) AS Dates

 FROM master..spt_values a cross join master..spt_values b 
)
SELECT * FROM DateRange   --<-- you have the desired date range here
                             -- other query whatever you need.