In SQL wordt een JOIN gebruikt om records uit twee of meer tabellen te combineren, gebaseerd op een gerelateerde kolom tussen deze tabellen. Dit is handig wanneer gegevens verdeeld zijn over meerdere tabellen in een relationele database.
Bij het uitvoeren van een JOIN geef je de tabellen en de conditie op die bepaalt hoe de records gecombineerd moeten worden. De conditie wordt meestal gespecificeerd met de ON-clausule, waarin de gerelateerde kolommen worden vergeleken.
Bijvoorbeeld:
SELECT *
FROM tabel1
JOIN tabel2
ON tabel1.kolom = tabel2.kolom;
Er zijn verschillende soorten JOINs, elk met een ander doel:
Stel je hebt twee tabellen:
klanten
klant_id | naam |
---|---|
1 | Jan |
2 | Maria |
3 | Pieter |
bestellingen
bestelling_id | klant_id | product |
---|---|---|
101 | 1 | Laptop |
102 | 2 | Telefoon |
JOIN:
SELECT klanten.naam, bestellingen.product
FROM klanten
INNER JOIN bestellingen
ON klanten.klant_id = bestellingen.klant_id;
Resultaat:
naam | product |
---|---|
Jan | Laptop |
Maria | Telefoon |
Schrijf nu eenzelfde join voor te tabel van deze oefening. Formuleer een query om de voornaam (first_name), achternaam (last_name), en het product dat elke gebruiker heeft gekocht op te halen.
Voorbeeld resultaat:
first_name | last_name | product |
---|---|---|
Twanya | Milltrophe | Bagel - Whole White Sesame |
Twanya | Milltrophe | Bread - Dark Rye |
Twanya | Milltrophe | Bread - Frozen Basket Variety |