Unterschiede
Hier werden die Unterschiede zwischen zwei Versionen der Seite angezeigt.
Beide Seiten, vorherige Überarbeitung Vorherige Überarbeitung Nächste Überarbeitung | Vorherige Überarbeitung Nächste ÜberarbeitungBeide Seiten, nächste Überarbeitung | ||
faecher:informatik:oberstufe:datenbanken:joinsii:start [23.11.2020 19:43] – [Einführung mit LEFT JOIN] sbel | faecher:informatik:oberstufe:datenbanken:joinsii:start [23.11.2020 20:00] – [LEFT JOIN] sbel | ||
---|---|---|---|
Zeile 12: | Zeile 12: | ||
<code sql> | <code sql> | ||
SELECT * FROM tabelle1 | SELECT * FROM tabelle1 | ||
- | LEFT JOIN tabelle2 ON tabelle1.Spaltenname | + | LEFT JOIN tabelle2 ON tabelle1.SpaltennameA |
- | LEFT JOIN tabelle3 ON tabelle1.Spaltenname | + | LEFT JOIN tabelle3 ON tabelle1.SpaltennameB |
WHERE ... | WHERE ... | ||
</ | </ | ||
+ | |||
+ | LEFT JOIN bedeutet nun, dass stets alle Zeilen der Tabelle zurückgegeben, | ||
+ | |||
+ | Es kann jetzt aber sein, dass in der Tabelle die per LEFT JOIN verknüpft wird kein passender Eintrag gefunden wird, | ||
+ | es gibt also keinen Datensatz in den beiden Tabellen, bei denen '' | ||
+ | |||
+ | ==== Beispiel: ==== | ||
+ | |||
+ | |||
+ | |||
+ | <code sql> | ||
+ | SELECT lehrer.name, | ||
+ | FROM lehrer | ||
+ | LEFT JOIN schueler ON lehrer.id=schueler.KLID | ||
+ | ORDER BY lehrer.name ASC | ||
+ | </ | ||
+ | |||
+ | {{ : | ||
+ | |||
+ | Hier kann man auch nochmal schön demonstrieren, | ||
+ | |||
+ | <code sql> | ||
+ | SELECT lehrer.name | ||
+ | FROM lehrer | ||
+ | LEFT JOIN schueler ON lehrer.id=schueler.KLID | ||
+ | ORDER BY lehrer.name ASC | ||
+ | </ | ||
+ | |||
+ | {{ : |