Menu
Coddy logo textTech

Aggregationsfunktionen

Teil des Abschnitts Grundlagen der SQL-Journey von Coddy. Lektion 68 von 72.

Aggregationsfunktionen werden verwendet, um AVG() oder MAX() oder jede andere Aggregationsfunktion bis einschließlich der aktuellen Zeile zu berechnen.
Zum Beispiel könnten wir den maximalen Umsatz berechnen, den wir bis zu jedem Endzeitraum erzielt haben:

MonatUmsatzRegion
440Osten
520Osten
660Westen
755Westen
861Osten
SELECT month, revenue, MAX(revenue) OVER (ORDER BY month ASC) as max_revenue
from table1

Dies wird zurückgeben:

monthrevenuemax_revenue
44040
52040
66060
75560
86161

Für die Monate 4 und 5 beträgt der maximale Umsatz 40, für die Monate 6 und 7 beträgt er 60, und für Monat 8 beträgt er 61. Das liegt daran, dass der alte Wert verworfen und der bisher größte Umsatz verwendet wird, sobald ein neuer, höherer Umsatz gefunden wird.

Für die Funktion AVG() sieht es so aus:

SELECT month, revenue, AVG(revenue) OVER (ORDER BY month ASC) as avg_revenue
from table1
MonatUmsatzavg_revenue
44040
52030
66040
75543.75
86147.2

Wir können unsere Berechnungen auch mithilfe von PARTITION BY nach bestimmten Kategorien gruppieren. Zum Beispiel:

SELECT month, revenue, region,
MAX(revenue) OVER (PARTITION BY region ORDER BY month ASC) as max_revenue
FROM table1

Das würde uns ergeben:

monthrevenueregionmax_revenue
440East40
520East40
660West60
755West60
861East61

Jetzt wird das Maximum für jede Region separat berechnet. Die Regionen Ost und West führen unabhängig voneinander ihre eigenen laufenden Maximalwerte.

challenge icon

Aufgabe

Einfach

Verfügbare Tabellen und Spalten:

  • books: book, page, words

Zeige für jedes Buch den Buchtitel, die Gesamtzahl seiner Seiten, die Anzahl der Wörter auf jeder Seite an und berechne:

  1. Die maximale Anzahl von Wörtern, die auf einer beliebigen Seite dieses Buchs gefunden wurde
  2. Die durchschnittliche Anzahl von Wörtern pro Seite für das gesamte Buch
  3. Die Differenz zwischen der Wortanzahl der aktuellen Seite und der durchschnittlichen Wortanzahl des Buchs

Zeige die Ergebnisse nach Buch und Seitenzahl sortiert an.

Gib die folgenden Spalten zurück:

  • book
  • page
  • words
  • max_words_in_book
  • avg_words_per_page
  • diff_from_avg

Probier es selbst

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 Grundlagen

Übe selbstständig: SQL-Playground