Problemen opsporen met een anti join
Goed gedaan met de semi joins! De anti join is een verwant en krachtig join-hulpmiddel. Deze is vooral handig om te checken of er een onjuist aantal records in een join verschijnt.
Stel, je wilt de valuta’s van landen in Oceanië achterhalen. Je hebt de volgende INNER JOIN geschreven, die 15 records oplevert. Nu wil je zeker weten dat alle Oceanische landen uit de countries-tabel in dit resultaat zitten. Dat doe je in de eerste stap.
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';
Als er Oceanische landen zijn die niet in deze INNER JOIN zitten, wil je de namen van die landen terugkrijgen. In de tweede stap schrijf je daarvoor een anti join!
Deze oefening maakt deel uit van de cursus
Data joinen in SQL
Praktische interactieve oefening
Probeer deze oefening eens door deze voorbeeldcode in te vullen.
-- Select code and name of countries from Oceania