LoslegenKostenlos loslegen

OVER – das Spiel ist vorbei

Mit der OVER() Klausel kannst du eine Aggregatfunktion auf einen Datensatz anwenden, ähnlich wie bei Unterabfragen in SELECT. Die OVER() Klausel bietet erhebliche Vorteile gegenüber den Unterabfragen in SELECT - nämlich, dass deine Abfragen schneller laufen, und die OVER() Klausel hat eine Vielzahl zusätzlicher Funktionen und Klauseln, die du in sie einbinden kannst, die wir später in diesem Kapitel behandeln werden.

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 Spiel-ID, den Ländernamen, die Saison sowie die Heim- und Auswärtstore aus den Tabellen match und country aus.
  • Vervollständige die Abfrage, die die durchschnittliche Anzahl der insgesamt erzielten 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 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