Sobes.tech
Junior — Middle

Was ist der Unterschied zwischen INNER JOIN und OUTER JOIN in SQL beim Verbinden von Tabellen?

sobes.tech KI

Antwort von AI

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 die Zeile nicht im Ergebnis angezeigt.

OUTER JOIN (LEFT, RIGHT oder FULL) gibt alle Zeilen aus einer oder beiden Tabellen zurück, einschließlich derjenigen ohne Übereinstimmung. In solchen Fällen werden die fehlenden Werte mit NULL ausgefüllt.

Beispiel:

-- INNER JOIN: nur übereinstimmende Datensätze
SELECT * FROM users INNER JOIN orders ON users.id = orders.user_id;

-- LEFT OUTER JOIN: alle Benutzer, auch wenn sie keine Bestellungen haben
SELECT * FROM users LEFT JOIN orders ON users.id = orders.user_id;