LoslegenKostenlos loslegen

Frühere und kommende Zeiträume betrachten

Die Fensterfunktionen LAG() und LEAD() erlauben es uns, in der Zeit rückwärts bzw. vorwärts zu schauen. Dadurch können wir Periodenwerte in einer einzigen, einfachen Abfrage miteinander vergleichen.

In dieser Übung wollen wir die Anzahl der Sicherheitsvorfälle pro Tag für die Vorfallstypen 1 und 2 im Juli 2019 vergleichen, konkret für den Zeitraum vom 2. Juli bis einschließlich 31. Juli.

Diese Übung ist Teil des Kurses

Zeitreihenanalyse in SQL Server

Kurs anzeigen

Anleitung zur Übung

  • Ergänze die Fensterfunktion, um die Anzahl der Vorfälle des Vortags zurückzugeben, partitioniert nach der Vorfalltyp-ID und sortiert nach dem Vorfallsdatum.
  • Ergänze die Fensterfunktion, um die Anzahl der Vorfälle des nächsten Tages zurückzugeben, partitioniert nach der Vorfalltyp-ID und sortiert nach dem Vorfallsdatum.

Interaktive Übung

Vervollständige den Beispielcode, um diese Übung erfolgreich abzuschließen.

SELECT
	ir.IncidentDate,
	ir.IncidentTypeID,
    -- Get the prior day's number of incidents
	___(ir.___, ___) OVER (
      	-- Partition by incident type ID
		PARTITION BY ir.___
      	-- Order by incident date
		ORDER BY ir.___
	) AS PriorDayIncidents,
	ir.NumberOfIncidents AS CurrentDayIncidents,
    -- Get the next day's number of incidents
	___(ir.___, ___) OVER (
      	-- Partition by incident type ID
		PARTITION BY ir.___
      	-- Order by incident date
		ORDER BY ir.___
	) AS NextDayIncidents
FROM dbo.IncidentRollup ir
WHERE
	ir.IncidentDate >= '2019-07-02'
	AND ir.IncidentDate <= '2019-07-31'
	AND ir.IncidentTypeID IN (1, 2)
ORDER BY
	ir.IncidentTypeID,
	ir.IncidentDate;
Code bearbeiten und ausführen