Filtern mit skalaren Unterabfragen
Unterabfragen sind unglaublich hilfreich, um komplexe Filter anzuwenden und Transformationen durchzuführen. Mit einer Unterabfrage kannst du Daten auf der Grundlage einzelner skalarer Werte auf eine Art und Weise filtern, wie du es mit WHERE-Klauseln oder Joins nicht kannst. Unterabfragen kannst du auch für fortgeschrittenere Bearbeitungen deines Datensatzes nutzen. Unterabfragen werden dir in der Praxis wahrscheinlich in jedem Szenario begegnen, in dem relationale Datenbanken verwendet werden.
In dieser Übung erstellst du eine Liste von Spielen, bei denen die Summe der geschossenen Tore (für beide Mannschaften insgesamt) mehr als das Dreifache des Durchschnitts der Spiele in der Tabelle matches_2013_2014 beträgt, die alle Spiele der Saison 2013/14 enthält.
Diese Übung ist Teil des Kurses
Datenbearbeitung in SQL
Anleitung zur Übung
- Berechne in einer Unterabfrage das Dreifache der durchschnittlichen Heim- und Auswärtstore aller Spiele.
- Filtere die Hauptabfrage nach Übereinstimmungen, bei denen die Gesamtzahl der Tore (Heim- und Auswärtstore) den Wert in der Unterabfrage übersteigt.
Interaktive Übung
Vervollständige den Beispielcode, um diese Übung erfolgreich abzuschließen.
SELECT
date,
home_goal,
away_goal
FROM matches_2013_2014
-- Filter for matches where total goals is greater than 3x the average
WHERE (___ + ___) ___
(SELECT ___ * AVG(___ + ___)
FROM ___);