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:

  1. INNER JOIN
  2. LEFT OUTER JOIN
  3. RIGHT OUTER JOIN
  4. 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:

SELECT * FROM student INNER JOIN studentCourse ON id = studentId;
text/x-csharp

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:

SELECT c.LastName, a.city FROM Customer c INNER JOIN Address a ON c.id = a.CustomerId;
text/x-csharp
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!

SQL durchschaut?

Dann beweise dein Können im SQL Dojo!

SQL Dojo

Über Digital Dojo

Das Digital Dojo ist der virtuelle Übungsraum von COUNT IT.

Angehende Programmierer*innen, Code-Neulinge, Wiedereinsteiger*innen und Fortgeschrittene finden hier das nötige Rüstzeug für ihre Karriere.

Du möchtest deine Lehre bei COUNT IT starten? Dann bist du hier richtig - besiege deine Gegner im Dojo Game und sichere dir deine Lehrstelle!

Inspire your career.

Newsletter abonnieren

Der COUNT IT Newsletter liefert viermal jährlich interessante Neuigkeiten über das Unternehmen. Gleich anfordern!