JOIN (INNER und LEFT)
Kombiniere Zeilen aus zwei Tabellen, wenn ein Schlüssel übereinstimmt. Ein INNER JOIN behält nur die Treffer; ein LEFT JOIN behält jede Zeile der linken Tabelle.
Syntax
SELECT … FROM a JOIN b ON a.key = b.key;SELECT … FROM a LEFT JOIN b ON a.key = b.key;
Beispiel
SELECT c.last_name, o.order_date FROM customers AS c JOIN orders AS o ON o.customer_id = c.customer_id;
Jede Bestellung mit dem Nachnamen des Kunden. Bestellungen ohne Kunden fallen weg.
Verwendete Tabellen: customers, orders. Probiere es unten in einer Lektion aus.
Häufige Fehler
- Ohne ON-Bedingung entsteht ein Cross Join: jede Zeile wird mit jeder anderen Zeile gepaart.
- Wenn du die rechte Tabelle in WHERE filterst, wird ein LEFT JOIN wieder zu einem INNER JOIN.