ALL die Unterabfragen JEDERZEIT
In Fußballligen werden Spiele in verschiedenen Runden („stages“) gespielt. Die siegreichen Teams marschieren von Runde zu Runde, bis sie die letzte Runde erreichen. In jeder Runde steht mehr auf dem Spiel als in der vorherigen. Die Tabelle match
enthält Daten zu den verschiedenen Runden, in denen jedes Spiel stattfand.
In dieser Lektion wirst du eine finale Abfrage über drei Übungen hinweg erstellen, die drei Unterabfragen enthält: eine in der SELECT
-Klausel, eine in der FROM
-Klausel und eine in der WHERE
-Klausel. In der letzten Übung soll deine Abfrage Daten über die durchschnittlich erzielten Tore in jeder Spielrunde ermitteln. Verändert sich die durchschnittliche Anzahl der erzielten Tore, wenn von Runde zu Runde mehr auf dem Spiel steht?
Diese Übung ist Teil des Kurses
Datenbearbeitung in SQL
Anleitung zur Übung
- Extrahiere die durchschnittliche Anzahl der Tore der Heim- und Auswärtsmannschaft in zwei
SELECT
-Unterabfragen. - Berechne die durchschnittlichen Heim- und Auswärtstore für die jeweilige Runde in der Hauptabfrage.
- Filtere beide Unterabfragen und die Hauptabfrage so, dass nur Daten aus der Saison 2012/2013 enthalten sind.
- Gruppiere die Abfrage nach der Spalte
m.stage
.
Interaktive Übung zum Anfassen
Probieren Sie diese Übung aus, indem Sie diesen Beispielcode ausführen.
SELECT
-- Select the stage and average goals for each stage
m.stage,
ROUND(___(___ + m.away_goal),2) AS avg_goals,
-- Select the average overall goals for the 2012/2013 season
ROUND((SELECT ___(___ + away_goal)
FROM match
WHERE season = ___),2) AS overall
FROM match AS m
-- Filter for the 2012/2013 season
WHERE ___ = ___
-- Group by stage
GROUP BY ___;