RIGHT JOIN
Es gibt alle Datensätze der rechten Tabelle (in diesem Fall
orders
) zurück, auch wenn es keine Übereinstimmung in der linken Tabelle (customers
) gibt.Wenn keine Übereinstimmung vorhanden ist, werden die fehlenden Werte aus der linken Tabelle als NULL angezeigt.
Tabelle: customers
customer_ID | name |
---|---|
1 | Alice |
2 | Bob |
3 | Carol |
Tabelle: orders
order_ID | customer_ID | amount |
---|---|---|
101 | 1 | 50 |
102 | 2 | 30 |
103 | 4 | 40 |
Wie funktioniert es
- Zwei Tabellen: Die Tabellen
customers
undorders
werden verknüpft. - Alle Datensätze aus der rechten Tabelle: Der
RIGHT JOIN
gibt alle Bestellungen aus der Tabelleorders
zurück, selbst wenn sie keinem Kunden zugeordnet sind. - Übereinstimmende Daten: Für Bestellungen, die einem Kunden zugeordnet sind (wie bei Alice und Bob), werden die entsprechenden Kundennamen angezeigt.
- Null-Werte für fehlende Kunden: Wenn eine Bestellung keinem Kunden zugeordnet ist (wie bei order_ID = 103), wird der Kundenname als
NULL
angezeigt.
SELECT customers.name, orders.amount
FROM customers
RIGHT JOIN orders ON customers.customer_ID = orders.customer_ID;
name | amount |
---|---|
Alice | 50 |
Bob | 30 |
NULL | 40 |