Premiers pas avec les sous-requêtes corrélées
Les sous-requêtes corrélées sont des sous-requêtes qui font référence à une ou plusieurs colonnes de la requête principale. Pour s’exécuter, les sous-requêtes corrélées dépendent des informations contenues dans la requête principale et ne peuvent donc pas être exécutées indépendamment.
Les sous-requêtes corrélées sont évaluées en SQL une fois par ligne de données extraite, un processus qui nécessite beaucoup plus de puissance de calcul et de temps qu'une simple sous-requête.
Dans cet exercice, vous vous entraînerez à utiliser des sous-requêtes corrélées pour examiner les correspondances dont les scores sont extrêmement aberrants pour chaque pays (plus de trois fois le score moyen).
Cet exercice fait partie du cours
Manipulation de données en SQL
Instructions
- Commencez la sous-requête dans
WHERE
en prenant la moyenne des buts à domicile et à l'extérieur. - Complétez les références des colonnes de la sous-requête, de sorte que
country_id
corresponde aux tableauxmain
etsub
.
Exercice interactif pratique
Essayez cet exercice en complétant cet exemple de code.
SELECT
main.country_id,
main.date,
main.home_goal,
main.away_goal
FROM match AS main
WHERE
-- Filter the main query by the subquery
(home_goal + away_goal) >
(SELECT AVG((___ + sub.away_goal) * 3)
FROM match AS sub
-- Join the main query to the subquery in WHERE
WHERE main.___ = sub.___);