INNER JOIN
Aus FI-Wiki
INNER JOIN
Ein INNER JOIN verknüpft zwei Tabellen miteinander und liefert nur diejenigen Datensätze zurück, bei denen in beiden Tabellen passende Werte vorhanden sind. Er ist der am häufigsten verwendete JOIN-Typ in relationalen Datenbanken.
Der Vergleich erfolgt üblicherweise über einen gemeinsamen Schlüssel (z. B. Primär- und Fremdschlüssel).
Grundsyntax
SELECT *
FROM tabelle1
INNER JOIN tabelle2
ON tabelle1.id = tabelle2.fk_id;
Beispiel
Angenommen, es gibt zwei Tabellen:
kunden
| kd_id | name |
|---|---|
| 1 | Anna |
| 2 | Max |
bestellungen
| bs_id | kd_id | betrag |
|---|---|---|
| 10 | 1 | 59.90 |
| 11 | 2 | 29.50 |
| 12 | 1 | 15.00 |
Abfrage:
SELECT name, betrag
FROM kunden
INNER JOIN bestellungen
ON kunden.kd_id = bestellungen.kd_id;
Ergebnis
| name | betrag |
|---|---|
| Anna | 59.90 |
| Max | 29.50 |
| Anna | 15.00 |
Nur Datensätze, die in beiden Tabellen vorkommen, erscheinen im Ergebnis.
Eigenschaften des INNER JOIN
- zeigt ausschließlich Datensätze mit passenden Werten in beiden Tabellen
- Datensätze ohne Übereinstimmung werden aus dem Ergebnis ausgeschlossen
- sehr gut geeignet für Abfragen, die mehrere Tabellen logisch miteinander verknüpfen
- basiert in der Praxis meist auf Beziehungen über Primär- und Fremdschlüssel
Kurzmerksatz
Der INNER JOIN zeigt nur Datensätze, die in beiden Tabellen übereinstimmende Werte besitzen.
