Ajouter une sous-requête dans FROM
Dans l’exercice précédent, vous avez créé un ensemble de données répertoriant la moyenne des buts marqués à domicile et à l’extérieur lors de chaque phase de la saison 2012/2013.
Dans l’étape suivante, vous allez transformer la requête principale en une sous-requête afin d’extraire la liste des phases dans lesquelles la moyenne des buts marqués à domicile au cours d’une phase est supérieure à la moyenne globale des buts marqués à domicile au cours d’un match.
Cet exercice fait partie du cours
Manipulation de données en SQL
Instructions
- Calculez la moyenne des buts marqués à domicile et la moyenne des buts marqués à l’extérieur à partir de la table des matchs pour chaque phase dans la sous-requête de la clause
FROM
. - Ajoutez à la clause
WHERE
une sous-requête qui calcule la moyenne globale des buts marqués à domicile. - Filtrez la requête principale pour les phases dans lesquelles la moyenne des buts marqués à domicile est supérieure à la moyenne générale.
- Sélectionnez les colonnes
stage
etavg_goals
de la sous-requêtes
dans la requête principale.
Exercice interactif pratique
Essayez cet exercice en complétant cet exemple de code.
SELECT
-- Select the stage and average goals from the subquery
___,
ROUND(___,2) AS avg_goals
FROM
-- Select the stage and average goals in 2012/2013
(SELECT
___,
___(___ + away_goal) AS avg_goals
FROM ___
WHERE season = ___
GROUP BY stage) AS s
WHERE
-- Filter the main query using the subquery
s.avg_goals __ (SELECT ___(___ + away_goal)
FROM match WHERE season = ___);