LoslegenKostenlos loslegen

OVER – das Spiel ist vorbei

Mit der Klausel OVER() kannst du eine Aggregatfunktion auf einen Datensatz anwenden, ähnlich wie bei Unterabfragen in SELECT. Die Klausel OVER() birgt gegenüber Unterabfragen in SELECT ein paar großartige Vorteile – deine Abfragen laufen schneller und die Klausel OVER() hat eine Menge zusätzlicher Funktionen und Klauseln, die du nutzen kannst. Die schauen wir uns später in diesem Kapitel an.

In dieser Übung überarbeitest du einige Abfragen aus den vorherigen Kapiteln mithilfe der OVER()-Klausel.

Diese Übung ist Teil des Kurses

Datenbearbeitung in SQL

Kurs anzeigen

Anleitung zur Übung

  • Wähle die ID des Spiels, name des Landes, season, home_goal und away_goal aus den Tabellen match und country aus.
  • Vervollständige die Abfrage, die die durchschnittliche Anzahl der insgesamt geschossenen Tore berechnet und dann den Gesamtwert in jeder Zeile mithilfe einer Fensterfunktion einfügt.

Interaktive Übung

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

SELECT 
	-- Select the match id, country name, season, home, and away goals
	___, 
    c.___ AS country, 
    m.season,
	___.home_goal,
	___,
    -- Use a window to include the aggregate average in each row
	___(___.home_goal + ___) ___ AS overall_avg
FROM match AS m
LEFT JOIN country AS c ON m.country_id = c.id;
Code bearbeiten und ausführen