INNER JOIN
Da es oft nicht reicht, in SQL Abfragen nur auf eine Tabelle zu machen, gibt es die Möglichkeit, mit JOINs Abfragen auf mehrere Tabellen zu machen.
Es gibt vier verschiedene Arten von JOINs:
- INNER JOIN
- LEFT OUTER JOIN
- RIGHT OUTER JOIN
- FULL OUTER JOIN
In diesem Tutorial wird der INNER JOIN näher behandelt. Der INNER JOIN führt Einträge aus der linken und rechten Tabelle nur dann zusammen, wenn die angegebenen Bedingungen erfüllt sind. Es gibt mehrere Möglichkeiten, um bei einem JOIN eine Bedingung anzugeben.
Wenn es in beiden Tabellen eine Spalte gibt, die übereinstimmen soll und diese Spalte in jeder Tabelle genau gleich heißt, kann man USING verwenden. Häufiger ist jedoch ON, bei dem explizit die Spaltennamen, die übereinstimmen sollen, angegeben werden. Wenn es in den zwei (oder mehreren) Tabellen Spalten gibt, die gleich heißen, kann man diese referenzieren, indem der Tabellenname angeführt wird und dann über einen Punkt auf die Spalte zugegriffen wird, wie man auch in folgendem Beispiel für die Verwendung eines INNER JOINs mit ON sehen kann:
Aus den folgenden zwei Tabellen (links die student Tabelle, rechts die studentCourse Tabelle):
entsteht folgende Tabelle:
Man sieht hier, dass nur jene Studenten übernommen wurden, die auch einen Eintrag in der studentCourse Tabelle haben. Aus der studentCourse Tabelle hingegegen wurden alle Einträge übernommen, weil jeder dort eingetragene Student auch einen Eintrag in der student Tabelle hat.
Es ist auch möglich, Tabellen anders zu benennen, sodass es nicht immer nötig ist, bei gleichlautenden Spaltennamen die gesamte Tabellenbezeichnung anzuführen. Das funktioniert, indem hinter der Tabelle im FROM mit einem Leerzeichen Abstand die gewünschte Bezeichnung vergeben wird:
LEFT und RIGHT JOIN
Tutorial zum LEFT JOIN und RIGHT JOIN und deren Verwendung
FULL JOIN
Tutorial zum FULL JOIN und seiner Verwendung
Subquery
Tutorial zu Unterabfragen/Subqueries mit Beispiel
SELECT Statement
Tutorial zum SELECT Statement inkl. Erklärung zur Auswahl der ersten Zeilen.
SQL Tutorials
Hast du noch Fragen oder bist dir bei einer Aufgabe unsicher? Wirf einen Blick auf die SQL Tutorials!
Übersicht der Katas
Hier findest du die Erklärung zum Begriff "Katas" und eine Übersicht aller Programmierübungen.
Dojo - virtueller Übungsraum
Löse die Dojo-Aufgaben und werde Programmier-Profi!