# 8.3 JOIN-Übersicht

**Definition**

Ein **JOIN** verbindet Datensätze aus mehreren Tabellen.

JOINs werden verwendet, wenn benötigte Daten auf mehrere Tabellen verteilt sind.

---

**Wichtige JOIN-Arten**

| JOIN-Art | Bedeutung |
|---------|-----------|
| INNER JOIN | nur passende Datensätze aus beiden Tabellen |
| LEFT JOIN | alle Datensätze der linken Tabelle |
| RIGHT JOIN | alle Datensätze der rechten Tabelle |
| FULL OUTER JOIN | alle Datensätze aus beiden Tabellen |

---

**INNER JOIN**

Gibt nur Datensätze aus, bei denen die Join-Bedingung in beiden Tabellen erfüllt ist.

```sql
SELECT kunde.name, bestellung.bestellnr
FROM kunde
INNER JOIN bestellung
ON kunde.kundennr = bestellung.kundennr;
```

---

**LEFT JOIN**

Gibt alle Datensätze der linken Tabelle aus.

Fehlende passende Datensätze der rechten Tabelle werden mit **NULL** dargestellt.

```sql
SELECT kunde.name, bestellung.bestellnr
FROM kunde
LEFT JOIN bestellung
ON kunde.kundennr = bestellung.kundennr;
```

---

**Grundregel**

JOINs werden meistens über **Primärschlüssel** und **Fremdschlüssel** verbunden.

---

**Merksatz**

INNER JOIN = nur passende Datensätze  
LEFT JOIN = alle Datensätze links + passende rechts

---

**Prüfungshinweis**

In IHK-Aufgaben ist meist entscheidend, ob auch Datensätze ohne passende Beziehung angezeigt werden sollen.

Typische Fehler:

- INNER JOIN und LEFT JOIN verwechseln.
- JOIN-Bedingung vergessen.
- falsche Schlüssel verbinden.
- linke und rechte Tabelle vertauschen.
- NULL-Werte bei LEFT JOIN nicht beachten.

---

**Quellen**

- IT-Handbuch für Fachinformatiker