Benutzer-Werkzeuge

Webseiten-Werkzeuge


db:mysql:join

Tabellen miteinander verknüpfen (JOIN)

LEFT JOIN

Alle Datensätze der linken Tabelle werden ausgegeben und denen der rechten, sofern vorhanden, zogeordnet. Spalten von nicht in der rechten Tabelle vorhandenen Datensätzen werden als „NULL“ zurückgegeben.

Beispiel:

Dieser SQL-Befehl zeigt alle Datensätze aus der ersten und alle vorhandenen Datensätze aus der zweiten Tabelle an. Im Normalfall würden nur Datensätze angezeigt werden, welche sich in beiden abzufragenden Tabellen befinden.

Tabellenname Anzahl der Datensätze
makler 127
Mailingaktion 18

SQL-Befehl:

SELECT * FROM Mailingaktion, makler WHERE makler.benutzername = Mailingaktion.USER

Ergebnis: 18 Datensätze, weil die Tabelle „Mailingaktion“ nur 18 Datensätze hat.

SELECT * FROM makler LEFT JOIN Mailingaktion ON makler.benutzername = Mailingaktion.USER

Ergebnis: Alle 127 Datensätze der Tabelle „makler“ werden ausgegeben und die 18 Datensätze der Tabelle „Mailingaktion“ wurden dem Maklern zugeordnet. Nicht zuordnebare Einträge der Tabelle „Mailingaktion“ werden auf „NULL“ gesetzt.


RIGHT JOIN

Alle Datensätze der rechten Tabelle werden ausgegeben und denen der linken, sofern vorhanden, zogeordnet. Spalten von nicht in der linken Tabelle vorhandenen Datensätzen werden als „NULL“ zurückgegeben.


INNER JOIN

Ein INNER JOIN gibt nur die Datensätze zurück, die in beiden Tabellen vorhanden sind.

db/mysql/join.txt · Zuletzt geändert: 2015/12/19 00:00 (Externe Bearbeitung)