Junior — Middle
Können Sie die Unterschiede zwischen den verschiedenen Arten von Tabellenverknüpfungen in SQL erklären?
sobes.tech KI
Antwort von AI
In SQL gibt es mehrere Haupttypen von Joins (JOIN), die es ermöglichen, Daten aus zwei oder mehr Tabellen zu kombinieren:
- INNER JOIN — gibt nur die Zeilen zurück, bei denen eine Übereinstimmung in beiden Tabellen gemäß der Bedingung besteht.
- LEFT JOIN (LEFT OUTER JOIN) — gibt alle Zeilen aus der linken Tabelle und die übereinstimmenden Zeilen aus der rechten Tabelle zurück; wenn keine Übereinstimmung besteht, sind die Werte der rechten Tabelle NULL.
- RIGHT JOIN (RIGHT OUTER JOIN) — gibt alle Zeilen aus der rechten Tabelle und die übereinstimmenden Zeilen aus der linken Tabelle zurück.
- FULL JOIN (FULL OUTER JOIN) — gibt alle Zeilen aus beiden Tabellen zurück, wobei NULL eingefügt wird, wo keine Übereinstimmung besteht.
- CROSS JOIN — kartesisches Produkt zweier Tabellen, das alle möglichen Zeilenkombinationen zurückgibt.
Beispiel für INNER JOIN:
SELECT employees.name, departments.name
FROM employees
INNER JOIN departments ON employees.department_id = departments.id;
Diese Abfrage gibt die Namen der Mitarbeiter und die Namen ihrer Abteilungen nur für die Mitarbeiter zurück, die eine Abteilung haben.