CommencezCommencez gratuitement

Filtrer avec une sous-requête

Une autre façon de filtrer à partir d'une table distincte est d'utiliser une sous-requête. Voici le processus :

  1. Créez une sous-requête qui génère une liste.
  2. Dans votre requête principale, ajoutez une clause WHERE qui fait référence à cette liste.

Votre objectif est de produire le même rapport que dans l'exercice précédent, qui présente les caractéristiques suivantes :

  • La première colonne est bronze_medals, soit le nombre total de bronze.
  • La deuxième colonne est silver_medals, soit le nombre total de silver.
  • La troisième colonne est gold_medals, soit le nombre total de gold.
  • Seuls les summer_games sont inclus.
  • Le rapport est filtré pour n'inclure que les athlètes de 16 ans ou moins.

Dans cet exercice, utilisez l'approche par sous-requête.

Cette activité fait partie du cours

Création de rapports en SQL

Voir le cours

Instructions de l’exercice

  • Créez une requête qui récupère le total de bronze_medals, silver_medals et gold_medals à partir de summer_games.
  • Mettez en place une sous-requête qui retourne tous les athlètes âgés de 16 ans ou moins.
  • Ajoutez une clause WHERE qui référence la sous-requête pour filtrer les athlètes âgés de 16 ans ou moins.

Exercice interactif pratique

Essayez cet exercice en complétant ce code d’exemple.

-- Pull summer bronze_medals, silver_medals, and gold_medals
SELECT 
	____, 
    ____, 
    ____
FROM ____
-- Add the WHERE statement below
WHERE ____ IN
    -- Create subquery list for athlete_ids age 16 or below    
    (SELECT ____
     FROM ____
     WHERE ____);
Modifier et exécuter le code