Sobes.tech
Junior — Middle

Können Sie die Unterschiede zwischen einem INNER JOIN und einem LEFT JOIN in SQL erklären?

sobes.tech KI

Antwort von AI

Inner Join (INNER JOIN) gibt nur die Zeilen zurück, die in beiden Tabellen gemäß der Join-Bedingung übereinstimmen. Wenn in einer der Tabellen kein entsprechender Eintrag vorhanden ist, wird diese Zeile nicht im Ergebnis angezeigt.

Left Join (LEFT JOIN) gibt alle Zeilen aus der linken Tabelle und die entsprechenden Zeilen aus der rechten Tabelle zurück. Wenn keine Übereinstimmung besteht, sind die Werte aus der rechten Tabelle NULL.

Beispiel:

SELECT a.id, a.name, b.order_id
FROM customers a
INNER JOIN orders b ON a.id = b.customer_id;

Gibt nur Kunden mit Bestellungen zurück.

SELECT a.id, a.name, b.order_id
FROM customers a
LEFT JOIN orders b ON a.id = b.customer_id;

Gibt alle Kunden zurück, auch diejenigen ohne Bestellungen (in diesem Fall ist order_id NULL).