Sobes.tech
Middle

Wie arbeitest du mit SQL? Was sind die Unterschiede zwischen INNER JOIN, LEFT JOIN, RIGHT JOIN, FULL OUTER JOIN?

sobes.tech KI

Antwort von AI

SQL JOIN ist eine Operation zum Verbinden von Daten aus zwei Tabellen anhand eines gemeinsamen Feldes. Die Unterschiede zwischen den JOIN-Typen:

  • INNER JOIN — gibt nur die Datensätze zurück, die in beiden Tabellen übereinstimmen.

  • LEFT JOIN (LEFT OUTER JOIN) — gibt alle Datensätze aus der linken Tabelle und die übereinstimmenden aus der rechten Tabelle zurück; wenn keine Übereinstimmung besteht, sind die Werte in der rechten Tabelle NULL.

  • RIGHT JOIN (RIGHT OUTER JOIN) — umgekehrt, gibt alle Datensätze aus der rechten Tabelle und die übereinstimmenden aus der linken Tabelle zurück; wenn keine Übereinstimmung besteht, sind die Werte in der linken Tabelle NULL.

  • FULL OUTER JOIN — gibt alle Datensätze aus beiden Tabellen zurück; wenn keine Übereinstimmung besteht, sind die entsprechenden Felder NULL.

Beispiel:

SELECT A.id, A.name, B.order_date
FROM Customers A
LEFT JOIN Orders B ON A.id = B.customer_id;

Diese Abfrage gibt alle Kunden mit ihren Bestellungen zurück, falls vorhanden, oder NULL im Feld order_date, wenn keine Bestellungen vorhanden sind.