FULL JOIN: Unterschied zwischen den Versionen
Aus FI-Wiki
Die Seite wurde neu angelegt: „== FULL JOIN == Ein '''FULL JOIN''' (oder FULL OUTER JOIN) kombiniert die Ergebnisse eines LEFT JOIN und eines RIGHT JOIN. Er liefert **alle Datensätze aus beiden Tabellen**, unabhängig davon, ob passende Einträge existieren. Wo keine Übereinstimmung vorhanden ist, werden die fehlenden Werte mit '''NULL''' ergänzt. Der FULL JOIN wird verwendet, wenn man einen **vollständigen Überblick über beide Tabellen** benötigt. === Grundsyntax === <sy…“ |
|||
| (2 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt) | |||
| Zeile 1: | Zeile 1: | ||
== FULL JOIN == | == FULL JOIN == | ||
Ein '''FULL JOIN''' (oder FULL OUTER JOIN) kombiniert die Ergebnisse eines LEFT JOIN und eines RIGHT JOIN. | Ein '''FULL JOIN''' (oder FULL OUTER JOIN) kombiniert die Ergebnisse eines [[LEFT JOIN]] und eines [[RIGHT JOIN]]. | ||
Er liefert **alle Datensätze aus beiden Tabellen**, unabhängig davon, ob passende Einträge existieren. | Er liefert **alle Datensätze aus beiden Tabellen**, unabhängig davon, ob passende Einträge existieren. | ||
Wo keine Übereinstimmung vorhanden ist, werden die fehlenden Werte mit '''NULL''' ergänzt. | Wo keine Übereinstimmung vorhanden ist, werden die fehlenden Werte mit '''NULL''' ergänzt. | ||
Der FULL JOIN wird verwendet, wenn man einen | Der FULL JOIN wird verwendet, wenn man einen '''vollständigen Überblick über beide Tabellen''' benötigt. | ||
=== Grundsyntax === | === Grundsyntax === | ||
| Zeile 62: | Zeile 62: | ||
Erklärung: | Erklärung: | ||
* Bestellung ohne passenden Kunden (kd_id = 3) → | * Bestellung ohne passenden Kunden (kd_id = 3) → '''NULL bei name''' | ||
* Kunde ohne Bestellung (Tom) → | * Kunde ohne Bestellung (Tom) → '''NULL bei betrag''' | ||
=== Eigenschaften des FULL JOIN === | === Eigenschaften des FULL JOIN === | ||
| Zeile 69: | Zeile 69: | ||
* fehlende Werte werden jeweils mit '''NULL''' ergänzt | * fehlende Werte werden jeweils mit '''NULL''' ergänzt | ||
* sinnvoll, um vollständige Datenübersichten zu erhalten | * sinnvoll, um vollständige Datenübersichten zu erhalten | ||
* Kombination der Ergebnisse von LEFT und RIGHT JOIN | * Kombination der Ergebnisse von [[LEFT JOIN]] und [[RIGHT JOIN]] | ||
* nicht in allen Datenbanken direkt verfügbar | * nicht in allen Datenbanken direkt verfügbar | ||
=== Kurzmerksatz === | === Kurzmerksatz === | ||
'''Der FULL JOIN liefert alle Datensätze aus beiden Tabellen und ergänzt fehlende Werte mit NULL. Er vereint LEFT und RIGHT JOIN.''' | '''Der FULL JOIN liefert alle Datensätze aus beiden Tabellen und ergänzt fehlende Werte mit NULL. Er vereint LEFT und RIGHT JOIN.''' | ||
Aktuelle Version vom 30. November 2025, 11:02 Uhr
FULL JOIN
Ein FULL JOIN (oder FULL OUTER JOIN) kombiniert die Ergebnisse eines LEFT JOIN und eines RIGHT JOIN. Er liefert **alle Datensätze aus beiden Tabellen**, unabhängig davon, ob passende Einträge existieren. Wo keine Übereinstimmung vorhanden ist, werden die fehlenden Werte mit NULL ergänzt.
Der FULL JOIN wird verwendet, wenn man einen vollständigen Überblick über beide Tabellen benötigt.
Grundsyntax
SELECT *
FROM tabelle1
FULL JOIN tabelle2
ON tabelle1.id = tabelle2.fk_id;
(Hinweis: MySQL unterstützt FULL JOIN nicht direkt – dort nutzt man UNION aus LEFT und RIGHT JOIN.)
Beispiel
kunden
| kd_id | name |
|---|---|
| 1 | Anna |
| 2 | Max |
| 4 | Tom |
bestellungen
| bs_id | kd_id | betrag |
|---|---|---|
| 10 | 1 | 59.90 |
| 11 | 2 | 29.50 |
| 12 | 3 | 15.00 |
Abfrage:
SELECT name, betrag
FROM kunden
FULL JOIN bestellungen
ON kunden.kd_id = bestellungen.kd_id;
Ergebnis
| name | betrag |
|---|---|
| Anna | 59.90 |
| Max | 29.50 |
| NULL | 15.00 |
| Tom | NULL |
Erklärung:
- Bestellung ohne passenden Kunden (kd_id = 3) → NULL bei name
- Kunde ohne Bestellung (Tom) → NULL bei betrag
Eigenschaften des FULL JOIN
- zeigt alle Datensätze aus beiden Tabellen
- fehlende Werte werden jeweils mit NULL ergänzt
- sinnvoll, um vollständige Datenübersichten zu erhalten
- Kombination der Ergebnisse von LEFT JOIN und RIGHT JOIN
- nicht in allen Datenbanken direkt verfügbar
Kurzmerksatz
Der FULL JOIN liefert alle Datensätze aus beiden Tabellen und ergänzt fehlende Werte mit NULL. Er vereint LEFT und RIGHT JOIN.
