LoslegenKostenlos loslegen

Fensterrahmen untersuchen

Zusätzlich zu den Klauseln PARTITION BY und ORDER BY können Fensterfunktionen Rahmen enthalten, die der Datenbank-Engine mitteilen, was als relevant für das Fenster gilt.

Hier betrachten wir vier verschiedene Rahmen, um zu verstehen, wie sich die Ergebnisse unterscheiden. Für jedes Beispiel wollen wir den Fensterrahmen für die folgende Abfrage ausfüllen:

SELECT
    ir.IncidentDate,
    ir.IncidentTypeID,
    SUM(ir.NumberOfIncidents) OVER (
        PARTITION BY ir.IncidentTypeID
        ORDER BY ir.IncidentDate
        << WINDOW FRAME >>
    ) AS NumberOfIncidents
FROM dbo.IncidentRollup ir;    

Wir geben ROWS oder RANGE an, je nachdem, ob wir einzelne Zeilen oder einen Wertebereich einbeziehen möchten. Wir geben die "preceding"-Klausel an, die festlegt, wie viele Zeilen (oder welcher Wertebereich) wir vor der aktuellen Zeile berücksichtigen. Außerdem geben wir die "following"-Klausel an, die festlegt, was wir ab der aktuellen Zeile nach vorne berücksichtigen.

Diese Übung ist Teil des Kurses

Zeitreihenanalyse in SQL Server

Kurs anzeigen

Interaktive Übung

In dieser interaktiven Übung kannst du die Theorie in die Praxis umsetzen.

Übung starten