sql >> Database >  >> RDS >> Sqlserver

Hoe kan ik waarden per dag optellen en ze vervolgens in de kalender plotten van startdatum tot laatste datum?

Een andere manier om het gewenste datumbereik te genereren, is zoiets als .....

;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.



  1. Databaseontwerp - naamgevingsconventies voor primaire sleutels

  2. MySQL Workbench-alternatieven - ClusterControl-configuratiebeheer

  3. Bereken het aantal kalendermaanden dat twee datums omvatten

  4. Hoe de rijafstand tussen twee breedte- en lengtegraden te berekenen in PHP