Ein impliziter Join ist eine Art, Tabellen in SQL zu verknüpfen, ohne das Schlüsselwort JOIN explizit zu verwenden. Stattdessen wird der Join über die WHERE-Klausel ausgedrückt.
SELECT *
FROM kunden, bestellungen
WHERE kunden.kunden_id = bestellungen.kunden_id;
In diesem Beispiel werden die Tabellen kunden und bestellungen durch die Bedingung in der WHERE-Klausel miteinander verknüpft.
SELECT *
FROM kunden
JOIN bestellungen ON kunden.kunden_id = bestellungen.kunden_id;
| Kriterium | Impliziter Join | Expliziter Join |
|---|---|---|
| Syntax | Tabellen durch Komma getrennt, Verknüpfung in WHERE |
Nutzung von JOIN und ON |
| Lesbarkeit | Weniger übersichtlich bei vielen Joins | Bessere Struktur und Lesbarkeit |
| Fehleranfälligkeit | Höher (z. B. versehentliches Kreuzprodukt) | Weniger, da Join-Bedingungen klarer |
| ANSI-92-Standard | Nicht konform | Konform |
Früher war das der Standard, aber heute wird der explizite Join empfohlen, da er lesbarer, strukturierter und weniger fehleranfällig ist – besonders bei komplexen Abfragen mit mehreren Tabellen.