Menu
Coddy logo textTech

Basic Join Part 1

Teil des Abschnitts Grundlagen der SQL-Journey von Coddy — Lektion 43 von 72.

Bisher haben wir Probleme mit einer einzelnen Tabelle behandelt. Nun werden wir untersuchen, wie man mehrere Tabellen handhabt.

Nehmen wir an, wir haben die folgenden Tabellen:

Kurse

course_idlecturer_id
11
21
32

Dozenten

lecturer_idname
1Jhonas
2Malidos

Die Aufgabe besteht darin, für jeden Kurs den Namen des entsprechenden Dozenten anzugeben.

Es gibt zwei Möglichkeiten, dies zu erreichen. Für jede Option verknüpfen wir jede Zeile in einer Tabelle mit der anderen. Wir prüfen eine Bedingung, die erfüllt sein muss, und wenn die Bedingung erfüllt ist, kombinieren wir die zwei Zeilen zu einer. Das gewünschte Ergebnis für beide Optionen:

course_idlecturer_name
1Jhonas
2Jhonas
3Malidos

Option 1:

SELECT courses.course_id, lecturers.name AS lecturer_name
FROM courses, lecturers
WHERE courses.lecturer_id = lecturers.lecturer_id

Hier schreiben wir zwei Tabellen in das FROM-Schlüsselwort, und in der WHERE-Klausel fordern wir, dass die lecturer_id beider Datensätze gleich sein muss. In der SELECT-Klausel schreiben wir jetzt table.column, damit die Datenbank weiß, wo sie die Spalte holen soll.

Option 2:

SELECT courses.course_id, lecturers.name AS lecturer_name
FROM courses
JOIN lecturers ON courses.lecturer_id = lecturers.lecturer_id

Anstatt WHERE verwenden wir JOIN table ON condition

Dieser Join-Typ wird auch als inner join bezeichnet.

challenge icon

Aufgabe

Einfach

Verfügbare Tabellen und Spalten:

  • <strong>grades</strong>: <strong>course_id</strong>, <strong>student_id</strong>, <strong>grade</strong>
  • <strong>students</strong>: <strong>id</strong>, <strong>name</strong>

Erstellen Sie eine Abfrage, die student_name, course_id, student_id und grade in einer Tabelle abruft. Ordnen Sie das Ergebnis nach grade in aufsteigender Reihenfolge.

Spickzettel

Um Daten aus mehreren Tabellen zu kombinieren, verwenden Sie entweder die Kommasyntax mit WHERE oder die JOIN-Syntax:

Option 1: Kommasyntax mit WHERE

SELECT table1.column, table2.column
FROM table1, table2
WHERE table1.id = table2.id

Option 2: JOIN-Syntax

SELECT table1.column, table2.column
FROM table1
JOIN table2 ON table1.id = table2.id

Verwenden Sie die table.column-Syntax, um anzugeben, aus welcher Tabelle eine Spalte stammt, wenn Sie aus mehreren Tabellen auswählen. Diese Art von Join wird als inner join bezeichnet.

Probier es selbst

quiz iconTeste dich selbst

Diese Lektion enthält ein kurzes Quiz. Starte die Lektion, um es zu beantworten und deinen Fortschritt zu speichern.

Alle Lektionen in Grundlagen