06.12.2012, Vladimír Klaus, navštíveno 6083x
Pokud jste se seznámili s INNER JOIN i LEFT JOIN, asi už tušíte, k čemu bude sloužit RIGHT JOIN. Začneme ale opět základním dotazem.
SELECT * FROM Objednavky
RIGHT JOIN Zakaznici ON Objednavky.IdZakaznika = Zakaznici.ID
Pravá část tabulky je tedy kompletní, ale v levé části nám tři řádky chybí.
Zákazníci Nováčková, Balabán a Jelínek si totiž ještě nic neobjednali. Upravíme dotaz, který nám tyto dva hříšníky rovnou vypíše.
SELECT * FROM Objednavky
RIGHT JOIN Zakaznici ON Objednavky.IdZakaznika = Zakaznici.ID
WHERE Objednavky.IdZakaznika IS NULL
Podobně můžeme zjistit, které produkty si ještě nikdo nikdy neobjednal.
SELECT * FROM Objednavky
RIGHT JOIN Produkty ON Objednavky.IdProduktu = Produkty.ID
WHERE Objednavky.IdProduktu IS NULL