1. Učit se
  2. /
  3. Kurzy
  4. /
  5. Joining Data in SQL

Connected

Cvičení

Diagnostika problémů pomocí anti joinu

Skvělá práce se semi joiny! Anti join je příbuzný a velmi užitečný nástroj. Hodí se zejména tehdy, když chceš zjistit, zda join nevrací chybný počet záznamů.

Řekněme, že tě zajímají měny zemí Oceánie. Napsal/a jsi následující INNER JOIN, který vrací 15 záznamů. Teď chceš ověřit, jestli jsou v tomto výsledku zahrnuty všechny oceánské země z tabulky countries. To uděláš v prvním kroku.

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';

Pokud tento INNER JOIN nějaké oceánské země vynechává, chceš vrátit jejich názvy. Ve druhém kroku si na to napíšeš anti join!

Pokyny 1/2

undefined XP
    1
    2
  • Začni dotazem, který vrátí sloupce code a name (v tomto pořadí, bez aliasů) pro všechny země v části světa (continent) s hodnotou Oceania z tabulky countries.
  • Všimni si počtu vrácených záznamů a porovnej ho s připraveným INNER JOINem, který vrací 15 záznamů.