JOIN in SQL is een clausule die wordt gebruikt om rijen uit twee of meer tabellen te combineren op basis van een kolom die gerelateerde waarden bevat. Het hoofddoel is om één dataset te verkrijgen met volledige en uitgebreide informatie. “Volledig” verwijst hier naar de gegevensstructuur die ontstaat door de combinatie van kolommen uit de gerelateerde tabellen.

Om aan verschillende gegevensopvragingsbehoeften te voldoen, is het JOIN-commando onderverdeeld in verschillende typen, namelijk OUTER JOIN, INNER JOIN, RIGHT JOIN en LEFT JOIN.

Verschillen tussen SQL JOIN-typen

Hieronder volgt een uitleg van de verschillende JOIN-clausules, samen met voorbeelden van de syntax, om u te helpen de verschillen te begrijpen:

1. FULL OUTER JOIN

Outer join (of Full Outer Join) retourneert alle records of rijen, zowel met overeenkomende waarden als zonder, uit beide tabellen die worden samengevoegd. Als er geen overeenkomende gegevens tussen de twee tabellen zijn, wordt de ontbrekende kant automatisch aangevuld met NULL-waarden in het join-resultaat.

Syntax:

SQL

SELECT column_name(s)

FROM table1

FULL OUTER JOIN table2

ON table1.column_name = table2.column_name

WHERE condition;

2. LEFT JOIN

Left Join is een bewerking die alle records uit de linkertabel (de eerste tabel) van de twee samengevoegde tabellen retourneert. Alle gegevens uit de linkertabel blijven behouden en worden weergegeven, zelfs als de waarden in de linkertabel niet overeenkomen met gegevens in de rechtertabel (de tweede tabel). Gegevens in de rechtertabel die geen overeenkomst hebben, worden vervangen door NULL.

Syntax:

SQL

SELECT column_name(s)

FROM table1

LEFT JOIN table2

ON table1.column_name = table2.column_name;

3. RIGHT JOIN (Aanvulling)

Als tegenhanger van Left Join retourneert de Right Join-clausule alle records uit de rechtertabel (de tweede tabel), samen met overeenkomende gegevens uit de linkertabel. Als er geen overeenkomende gegevens in de linkertabel zijn, zal het resultaat van de linkerkant NULL zijn.

Syntax:

SQL

SELECT column_name(s)

FROM table1

RIGHT JOIN table2

ON table1.column_name = table2.column_name;

4. INNER JOIN (Aanvulling)

Inner Join is de meest gebruikte clausule. In tegenstelling tot Outer Join werkt Inner Join strikter door alleen rijen te retourneren die overeenkomende gegevens (de doorsnede) in beide samengevoegde tabellen hebben.

Syntax:

SQL

SELECT column_name(s)

FROM table1

INNER JOIN table2

ON table1.column_name = table2.column_name;

Shares:
Geef een reactie

Je e-mailadres wordt niet gepubliceerd. Vereiste velden zijn gemarkeerd met *