SQLTutorial.nl

Right join

De right join, of right outer join in sommige database, geeft altijd alle rijen terug van de rechter tabel (tabelnaam2). Als er overeenkomsten zijn met de linker tabel (tabelnaam1) dan worden deze ook weergegeven. De syntax voor de right join query ziet er als volgt uit:
SELECT kolomnaam1, kolomnaam2
FROM tabelnaam1
RIGHT JOIN tabelnaam2 ON tabelnaam1.kolomnaam = tabelnaam2.kolomnaam
- In sommige database moet RIGHT OUTER JOIN gebruikt wordt ipv. RIGHT JOIN.

Voorbeeld

De "Persoon" tabel zie er als volgd uit:
id Voornaam Achternaam Woonplaats Geslacht
1 Henk Janssen Amsterdam M
2 Petra de klomp Nijmegen V
3 Sjoerd Vermeulen Amsterdam M
Er is tussen deze tabellen een relatie tussen
Persoon.Id > Order.PersoonNr.

De tabel "Orders":
OrderNr PersoonNr Bestel datum
1 1 10-1-2009
2 4 11-2-2009
4 1 8-8-2009
5 3 23-8-2009
6 4 10-9-2009

In onderstaande query zullen alle orders worden opgevraagd uit de database, indien er een relatie met de personen tabel gelegd kan worden dan zullen deze gegevens ook zichtbaar worden.
SELECT *
FROM Persoon
RIGHT JOIN Orders
ON Persoon.id = Orders.PersoonNr
id Voornaam Achternaam Woonplaats Geslacht OrderNr PersoonNr Bestel datum
1 Henk Janssen Amsterdam M 1 1 10-1-2009
- - - - - 2 4 11-2-2009
1 Henk Janssen Amsterdam M 4 1 8-8-2009
3 Sjoerd Vermeulen Amsterdam M 5 3 23-8-2009
- - - - - 6 4 10-9-2009

In het resultaat hierboven is te zien dat alle gegevens van de order tabel zichtbaar worden gemaakt. Waarmogelijk wordt een relatie gelegd met de Persoon tabel. Is dit niet mogelijke (Persoon id 4 bestaat niet) dan worden de persoon waardes met NULL gevuld.