|
Join
Een join wordt gebruikt om gecombineerde rijen van verschillende tabellen te krijgen. Een join wordt gemaakt wanneer 2 of meerder tabellen in de
FROM voorkomt in de sql statement.
Er zijn verschillende soorten joins. Een aantal voorbeelden.
Inner Join (simpele join)
Dit is de meest voorkomende join. Inner joins laten alle rijen van meerdere tabellen zien waar de join conditie waar is.
Voorbeeld #1
SELECT Klant.naam, aanspreektitel.strATomschrijving, Klant.hoofdcontactpersoon
FROM dbo.Klant INNER JOIN dbo.aanspreektitel
ON dbo.Klant.aanspreektitel = dbo.aanspreektitel.intATcode
Laat naam, aanspreektitelomschrijving en contactpersoon waar de aanspreektitel is ingevuld.
De tabel klant bestaat onder andere uit de volgende gegevens:
| Klantnummer | Naam | aanspreektitel | Hoofdcontactpersoon |
| 1002 | Foto H. vd Oever | 1 | |
| 1005 | Garage Haarsma | | |
| 1017 | Watersport centrum tacozijl | | |
| 1029 | Recreama caravans | 2 | Jansen |
| 1031 | Van triest | 3 | Triest |
We hebben een andere tabel aanspreektitel die bestaat uit de volgende gegevens:
| intATCode | strATomSchrijving | strATaanhef |
|
1 | - | geachte heer/mevrouw |
|
2 | dhr | geachte heer |
|
3 | mevr | geachte mevrouw |
de uitkomst van de select statement die hierboven staat is
| naam | omschrijving | contactpersoon |
| Foto H. vd oever | - | |
| Recreama caravans | dhr | Jansen |
| Van triest | mevr | Triest |
de rijen met klkant 1005 en 1017 komen niet voor omdat ze niet voorkomen in de tabel aanspreektitel
Outer Join
Een andere type van join is de outer join. Dit type join laat alle rijen van de een tabel zien alleen van de secondaire waar de joined velden gelijk zijn.
Voorbeeld #2
SELECT Klant.naam, aanspreektitel.strATomschrijving, Klant.hoofdcontactpersoon
FROM dbo.Klant left outer JOIN dbo.aanspreektitel
ON dbo.Klant.aanspreektitel = dbo.aanspreektitel.intATcode
Deze SQL statement laat alle rijen van de klant zien en waar de aanspreektitel niet is ingevuld een NULL zien
| naam | omschrijving | contactpersoon |
| Foto H. vd oever | - | |
| Garage Haarsma | NULL | |
| Watersport centrum tacozijl | NULL | |
| Recreama caravans | dhr | Jansen |
| Van triest | mevr | Triest |
|