LEFT JOIN: Unterschied zwischen den Versionen
Aus FI-Wiki
| Zeile 57: | Zeile 57: | ||
=== Eigenschaften des LEFT JOIN === | === Eigenschaften des LEFT JOIN === | ||
* zeigt | * zeigt '''alle Datensätze der linken Tabelle''' | ||
* zeigt passende Datensätze aus der rechten Tabelle | * zeigt passende Datensätze aus der rechten Tabelle | ||
* fehlende Werte werden mit | * fehlende Werte werden mit '''NULL''' ergänzt | ||
* ideal, wenn | * ideal, wenn '''alle''' Einträge der linken Tabelle benötigt werden (z. B. alle Kunden, auch ohne Bestellung) | ||
=== Kurzmerksatz === | === Kurzmerksatz === | ||
'''Der LEFT JOIN zeigt alle Datensätze der linken Tabelle und ergänzt fehlende rechte Werte mit NULL.''' | '''Der LEFT JOIN zeigt alle Datensätze der linken Tabelle und ergänzt fehlende rechte Werte mit NULL.''' | ||
Version vom 24. November 2025, 14:30 Uhr
LEFT JOIN
Ein LEFT JOIN liefert alle Datensätze aus der linken Tabelle sowie die passenden Datensätze aus der rechten Tabelle. Wenn es rechts keine passenden Einträge gibt, werden die fehlenden Werte als NULL angezeigt.
Der LEFT JOIN wird verwendet, wenn man alle Datensätze der linken Tabelle sehen möchte, unabhängig davon, ob es passende Werte in der rechten Tabelle gibt.
Grundsyntax
SELECT *
FROM tabelle1
LEFT JOIN tabelle2
ON tabelle1.id = tabelle2.fk_id;
Beispiel
kunden
| kd_id | name |
|---|---|
| 1 | Anna |
| 2 | Max |
| 3 | Lisa |
bestellungen
| bs_id | kd_id | betrag |
|---|---|---|
| 10 | 1 | 59.90 |
| 11 | 2 | 29.50 |
Abfrage:
SELECT name, betrag
FROM kunden
LEFT JOIN bestellungen
ON kunden.kd_id = bestellungen.kd_id;
Ergebnis
| name | betrag |
|---|---|
| Anna | 59.90 |
| Max | 29.50 |
| Lisa | NULL |
Lisa hat keine Bestellung – daher NULL.
Eigenschaften des LEFT JOIN
- zeigt alle Datensätze der linken Tabelle
- zeigt passende Datensätze aus der rechten Tabelle
- fehlende Werte werden mit NULL ergänzt
- ideal, wenn alle Einträge der linken Tabelle benötigt werden (z. B. alle Kunden, auch ohne Bestellung)
Kurzmerksatz
Der LEFT JOIN zeigt alle Datensätze der linken Tabelle und ergänzt fehlende rechte Werte mit NULL.
