Menu
CoddyTech

Laufende Summe

Teil des Abschnitts Über die Grundlagen hinaus der SQL-Journey von Coddy. Lektion 25 von 27.

Eine laufende (kumulative) Summe ist SUM über ein Fenster mit ORDER BY: Dadurch wächst das Aggregat Zeile für Zeile.

SELECT day, amount,
       SUM(amount) OVER (ORDER BY day) AS running_total
FROM revenue

Ohne ORDER BY umfasst das Fenster jede Zeile, und du erhältst in jeder Zeile die Gesamtsumme. Mit dieser Klausel erweitert sich das Fenster in dieser Reihenfolge jeweils um eine Zeile, sodass jede Zeile nur sich selbst und alle vorherigen Zeilen sieht.

Füge ein PARTITION BY hinzu, um die laufende Summe für jede Gruppe zurückzusetzen, z. B. die laufende Summe des Umsatzes pro Region, Tag für Tag.

challenge icon

Aufgabe

Einfach

Verfügbare Tabellen und Spalten:

  • revenue: region, day, amount

Gib region, day, amount und region_running_total zurück: den kumulierten amount für diese Region bis einschließlich dieses Tages. Die laufende Summe sollte für jede Region zurückgesetzt werden.

Verwende PARTITION BY für das Fenster. Sortiere zuerst nach region, dann nach day.

Probier es selbst

SELECT region, day, amount,
       -- Füge hier die Spalte region_running_total hinzu
FROM revenue
ORDER BY region, day
quiz iconTeste dich selbst

Diese Lektion enthält ein kurzes Quiz. Starte die Lektion, um es zu beantworten und deinen Fortschritt zu speichern.

Alle Lektionen in Über die Grundlagen hinaus

Übe selbstständig: SQL-Playground