Left-, Right- und Inner-Joins
Der Online-Shop hat mehr Produkte von einem Lieferanten bestellt, weil der Lagerbestand zu niedrig war. Das bedeutet, dass wir etwas freie Zeit haben, bis die Lieferung eintrifft.
Nutzen wir diese Gelegenheit, um etwas Neues zu lernen! Bisher hast du den Standard JOIN in SQL verwendet, aber es gibt auch andere Arten von Joins, die du verwenden kannst.
Hier sind die 4 Haupttypen von Tabellen-Joins:
INNER JOIN: Gibt Zeilen mit übereinstimmenden Werten in beiden Tabellen zurück. Das ist dasselbe wie der Standard JOIN, den du bisher verwendet hast;
LEFT JOIN: Gibt alle Zeilen der linken Tabelle und die übereinstimmenden Zeilen der rechten Tabelle zurück. Falls es keine Übereinstimmungen gibt, wirdNULLfür die rechte Tabelle zurückgegeben;
RIGHT JOIN: Gibt alle Zeilen aus der rechten Tabelle und die übereinstimmenden Zeilen aus der linken Tabelle zurück. Wenn keine Übereinstimmung vorhanden ist, wirdNULLfür die linke Tabelle zurückgegeben;
FULL JOIN: Gibt alle Zeilen zurück, wenn es in einer der Tabellen eine Übereinstimmung gibt. Wenn keine Übereinstimmungen vorliegen, wirdNULLfür die fehlenden Werte in der anderen Tabelle zurückgegeben.
Bevor wir diese Joins anwenden, schauen wir uns die beiden Tabellen an, mit denen wir arbeiten werden. Sie enthalten Details zu Kursen und den eingeschriebenen Studierenden.
courses:
enrollments:
Die Syntax für die Verwendung dieser Join-Typen ist eigentlich einfach. Anstelle des bekannten JOIN oder INNER JOIN geben Sie einfach LEFT JOIN oder einen anderen Typ von JOIN an:
SELECT table1.column, table2.column
FROM table1 -- this is the LEFT table
LEFT JOIN table 2 -- this is the RIGHT table
ON table1.common_column = table2.common_column
Swipe to start coding
Schreiben Sie eine Abfrage, um eine Liste aller Kurse und der eingeschriebenen Studenten abzurufen, einschließlich Kurse ohne registrierte Studenten.
Sie müssen die folgenden Spalten in dieser Reihenfolge abrufen:
courses.course_id,
courses.course_name,
courses.description,
enrollments.student_name,
enrollments.enrollment_date
Verwenden Sie den entsprechenden Typ von JOIN, um diese Aufgabe zu lösen!
Kurze Anweisungen
- Rufen Sie die Spalten
courses.course_id,courses.course_name,courses.description,enrollments.student_nameundenrollments.enrollment_dateaus der Tabellecoursesab. - Verwenden Sie einen LEFT JOIN, um die Tabelle
enrollmentszu verbinden. - Die gemeinsame Spalte für beide Tabellen ist
courses.course_id = enrollments.course_id.
Lösung
Danke für Ihr Feedback!
single
Fragen Sie AI
Fragen Sie AI
Fragen Sie alles oder probieren Sie eine der vorgeschlagenen Fragen, um unser Gespräch zu beginnen
Can you explain the differences between these types of joins with examples?
How do I decide which type of join to use in a specific scenario?
Can you show how these joins would work with the provided `courses` and `enrollments` tables?
Awesome!
Completion rate improved to 4
Left-, Right- und Inner-Joins
Swipe um das Menü anzuzeigen
Der Online-Shop hat mehr Produkte von einem Lieferanten bestellt, weil der Lagerbestand zu niedrig war. Das bedeutet, dass wir etwas freie Zeit haben, bis die Lieferung eintrifft.
Nutzen wir diese Gelegenheit, um etwas Neues zu lernen! Bisher hast du den Standard JOIN in SQL verwendet, aber es gibt auch andere Arten von Joins, die du verwenden kannst.
Hier sind die 4 Haupttypen von Tabellen-Joins:
INNER JOIN: Gibt Zeilen mit übereinstimmenden Werten in beiden Tabellen zurück. Das ist dasselbe wie der Standard JOIN, den du bisher verwendet hast;
LEFT JOIN: Gibt alle Zeilen der linken Tabelle und die übereinstimmenden Zeilen der rechten Tabelle zurück. Falls es keine Übereinstimmungen gibt, wirdNULLfür die rechte Tabelle zurückgegeben;
RIGHT JOIN: Gibt alle Zeilen aus der rechten Tabelle und die übereinstimmenden Zeilen aus der linken Tabelle zurück. Wenn keine Übereinstimmung vorhanden ist, wirdNULLfür die linke Tabelle zurückgegeben;
FULL JOIN: Gibt alle Zeilen zurück, wenn es in einer der Tabellen eine Übereinstimmung gibt. Wenn keine Übereinstimmungen vorliegen, wirdNULLfür die fehlenden Werte in der anderen Tabelle zurückgegeben.
Bevor wir diese Joins anwenden, schauen wir uns die beiden Tabellen an, mit denen wir arbeiten werden. Sie enthalten Details zu Kursen und den eingeschriebenen Studierenden.
courses:
enrollments:
Die Syntax für die Verwendung dieser Join-Typen ist eigentlich einfach. Anstelle des bekannten JOIN oder INNER JOIN geben Sie einfach LEFT JOIN oder einen anderen Typ von JOIN an:
SELECT table1.column, table2.column
FROM table1 -- this is the LEFT table
LEFT JOIN table 2 -- this is the RIGHT table
ON table1.common_column = table2.common_column
Swipe to start coding
Schreiben Sie eine Abfrage, um eine Liste aller Kurse und der eingeschriebenen Studenten abzurufen, einschließlich Kurse ohne registrierte Studenten.
Sie müssen die folgenden Spalten in dieser Reihenfolge abrufen:
courses.course_id,
courses.course_name,
courses.description,
enrollments.student_name,
enrollments.enrollment_date
Verwenden Sie den entsprechenden Typ von JOIN, um diese Aufgabe zu lösen!
Kurze Anweisungen
- Rufen Sie die Spalten
courses.course_id,courses.course_name,courses.description,enrollments.student_nameundenrollments.enrollment_dateaus der Tabellecoursesab. - Verwenden Sie einen LEFT JOIN, um die Tabelle
enrollmentszu verbinden. - Die gemeinsame Spalte für beide Tabellen ist
courses.course_id = enrollments.course_id.
Lösung
Danke für Ihr Feedback!
single