CommencerCommencez gratuitement

Filtrage à l’aide d’une sous-requête avec liste

Dans cet exercice, l’objectif est de générer la liste des équipes qui n’ont jamais joué de match à domicile. À l’aide d’une sous-requête, vous allez générer une liste de valeurs hometeam_ID uniques à partir de la table non filtrée match pour les exclure dans la colonne team_api_ID de la table team.

Outre le filtrage à l’aide d’une sous-requête à valeur unique (scalaire), vous pouvez créer une liste de valeurs dans une sous-requête pour filtrer les données en fonction d’un ensemble complexe de conditions. Ce type de sous-requête génère une liste de référence à une colonne pour la requête principale. Tant que les valeurs de votre liste correspondent à une colonne de la table de votre requête principale, vous n’avez pas besoin d’utiliser de jointure, même si la liste provient d’une table distincte.

Cet exercice fait partie du cours

<cours>Manipulation de données en SQL</cours>
Voir le cours

Instructions de l’exercice

  • Créez une sous-requête dans la clause WHERE qui récupère toutes les valeurs uniques de hometeam_id dans la table match.
  • Sélectionnez les valeurs team_long_name et team_short_name dans la table team. Excluez toutes les valeurs de la sous-requête dans la requête principale.

Exercice interactif pratique

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

SELECT 
	-- Select the team long and short names
	___,
	___
FROM ___ 
-- Exclude all values from the subquery
WHERE team_api_id ___ ___
     (___ DISTINCT ___  FROM ___);
Modifier et exécuter le code