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!
Toto cvičení je součástí kurzu
Joining Data in SQL
Interaktivní cvičení na vyzkoušení si v praxi
Vyzkoušejte si toto cvičení dokončením tohoto ukázkového kódu.
-- Select code and name of countries from Oceania