Laufende Summen mit SUM()
Eine der stärksten Anwendungen von Window-Funktionen ist das Berechnen laufender Summen: eine fortlaufende Zählung eines bestimmten Werts über einen Zeitraum. Hier möchten wir mit einer Window-Funktion berechnen, wie viele Vorfälle an jedem Datum und für jeden Vorfallstyp im Juli 2019 aufgetreten sind – sowie eine laufende Zählung der Gesamtzahl der Vorfälle pro Vorfallstyp. Eine Window-Funktion hilft uns, dieses Problem in einer einzigen Abfrage zu lösen.
Diese Übung ist Teil des Kurses
Zeitreihenanalyse in SQL Server
Anleitung zur Übung
- Ergänze die passende Window-Funktion.
- Ergänze die
PARTITION BY-Klausel in der Window-Funktion und partitioniere nach der ID des Vorfallstyps. - Ergänze die
ORDER BY-Klausel in der Window-Funktion und sortiere nach dem Vorfalldatum (in der Standardreihenfolge, aufsteigend).
Interaktive Übung
Vervollständige den Beispielcode, um diese Übung erfolgreich abzuschließen.
SELECT
ir.IncidentDate,
ir.IncidentTypeID,
ir.NumberOfIncidents,
-- Get the total number of incidents
___(ir.NumberOfIncidents) OVER (
-- Do this for each incident type ID
PARTITION BY ir.___
-- Sort by the incident date
ORDER BY ir.___
) AS NumberOfIncidents
FROM dbo.IncidentRollup ir
INNER JOIN dbo.Calendar c
ON ir.IncidentDate = c.Date
WHERE
c.CalendarYear = 2019
AND c.CalendarMonth = 7
AND ir.IncidentTypeID IN (1, 2)
ORDER BY
ir.IncidentTypeID,
ir.IncidentDate;