1. Apprendre
  2. /
  3. Cours
  4. /
  5. Joindre des données en SQL

Connected

Exercice

Diagnostiquer des problèmes avec un anti-join

Beau travail avec les semi-joins! L'anti-join est un outil de jointure connexe et puissant. Il peut être particulièrement utile pour repérer si un nombre incorrect d'enregistrements apparaît dans une jointure.

Supposons que vous souhaitiez identifier les monnaies des pays de l'Océanie. Vous avez écrit la INNER JOIN suivante, qui renvoie 15 enregistrements. Maintenant, vous voulez vous assurer que tous les pays d'Océanie de la table countries sont inclus dans ce résultat. Vous ferez cela à la première étape.

SELECT c1.code, name, basic_unit AS currency
FROM countries AS c1
INNER JOIN currencies AS c2
ON c1.code = c2.code
WHERE c1.continent = 'Oceania';

S'il y a des pays d'Océanie exclus de cette INNER JOIN, vous voulez retourner le nom de ces pays. Vous écrirez un anti-join pour cela à la deuxième étape!

Instructions 1/2

undefined XP
    1
    2
  • Commencez par écrire une requête qui renvoie le code et le name (dans cet ordre, sans alias) pour tous les pays du continent Oceania à partir de la table countries.
  • Observez le nombre d'enregistrements retournés et comparez-le avec la INNER JOIN fournie, qui renvoie 15 enregistrements.