logo

SQL-Joins (Inner-, Left-, Right- und Full-Join)

SQL-Join Die Operation kombiniert Daten oder Zeilen aus zwei oder mehr Tabellen basierend auf einem gemeinsamen Feld zwischen ihnen.

In diesem Artikel erfahren wir mehr darüber Joins in SQL, behandelt JOIN-Typen, Syntax und Beispiele.

SQL JOIN

Die SQL JOIN-Klausel wird verwendet, um Daten aus mehreren Tabellen abzufragen und darauf zuzugreifen, indem logische Beziehungen zwischen ihnen hergestellt werden. Es kann gleichzeitig auf Daten aus mehreren Tabellen zugreifen, indem es gemeinsame Schlüsselwerte verwendet, die in verschiedenen Tabellen verwendet werden.



Wir können SQL JOIN mit mehreren Tabellen verwenden. Es kann auch mit anderen Klauseln kombiniert werden, die beliebteste Verwendung wird die Verwendung von JOIN mit sein WHERE-Klausel um den Datenabruf zu filtern.

SQL JOIN-Beispiel

Betrachten Sie die beiden folgenden Tabellen wie folgt:

Wert der Zeichenfolge Java

Student:

Studententisch Studentenkurs :

Kurstabelle

Beide Tabellen sind durch einen gemeinsamen Schlüssel (Spalte) verbunden, nämlich ROLL_NO.

Wir können eine JOIN-Operation mit der angegebenen SQL-Abfrage ausführen:

  SELECT   s.roll_no, s.name, s.address, s.phone, s.age, sc.course_id   FROM   Student s   JOIN   StudentCourse sc   ON   s.roll_no = sc.roll_no;>

Ausgabe:

ROLL_NR NAME ADRESSE TELEFON ALTER KURS-ID
1 HARSCH DELHI XXXXXXXXX 18 1
2 ÜBEN BIHAR XXXXXXXXX 19 2
3 RIYANKA SILGURI XXXXXXXXX zwanzig 2
4 TIEF RAMNAGAR XXXXXXXXX 18 3
5 SAPTARHI KOLKATA XXXXXXXXX 19 1

JOIN-Typen in SQL

Es gibt viele Arten von Joins in SQL. Je nach Anwendungsfall können Sie unterschiedliche Arten von SQL-JOIN-Klauseln verwenden. Hier sind die häufig verwendeten SQL JOIN-Typen:

  • INNER JOIN
  • LINKS BEITRETEN
  • RICHTIG BEITRETEN
  • Vollständiger Beitritt
  • NATÜRLICHE VERBINDUNG

SQL INNER JOIN

Der INNER JOIN Das Schlüsselwort wählt alle Zeilen aus beiden Tabellen aus, solange die Bedingung erfüllt ist. Dieses Schlüsselwort erstellt die Ergebnismenge, indem es alle Zeilen aus beiden Tabellen kombiniert, in denen die Bedingung erfüllt ist, d. h. der Wert des gemeinsamen Felds ist derselbe.

Syntax :

Die Syntax für SQL INNER JOIN lautet:

  SELECT   table1.column1,table1.column2,table2.column1,....   FROM   table1    INNER JOIN   table2   ON   table1.matching_column = table2.matching_column;>

Hier,

  • Tabelle 1 : Erster Tisch.
  • Tabelle 2 : Zweiter Tisch
  • passende_Spalte : Spalte, die beiden Tabellen gemeinsam ist.

Notiz : Wir können auch JOIN anstelle von INNER JOIN schreiben. JOIN ist dasselbe wie INNER JOIN.

Visuelle Darstellung des inneren SQL-Joins

INNER JOIN-Beispiel

Schauen wir uns das Beispiel der INNER JOIN-Klausel an und verstehen, wie sie funktioniert.

Diese Abfrage zeigt die Namen und das Alter der Studenten an, die in verschiedenen Kursen eingeschrieben sind.

  SELECT   StudentCourse.COURSE_ID, Student.NAME, Student.AGE   FROM   Student   INNER JOIN   StudentCourse   ON   Student.ROLL_NO = StudentCourse.ROLL_NO;>

Ausgabe :

SQL-Inner-Join-Beispielausgabe

SQL LINKS JOIN

LEFT JOIN gibt alle Zeilen der Tabelle auf der linken Seite des Joins zurück und gleicht Zeilen für die Tabelle auf der rechten Seite des Joins ab. Für die Zeilen, für die es auf der rechten Seite keine passende Zeile gibt, enthält die Ergebnismenge Null . LEFT JOIN wird auch als LEFT OUTER JOIN bezeichnet.

Syntax

Die Syntax von LEFT JOIN in SQL lautet :

Bilderspiele mit Android
  SELECT   table1.column1,table1.column2,table2.column1,....   FROM   table1    LEFT JOIN   table2   ON   table1.matching_column = table2.matching_column;>

Hier,

  • Tabelle 1: Erster Tisch.
  • Tabelle 2 : Zweiter Tisch
  • passende_Spalte : Spalte, die beiden Tabellen gemeinsam ist.

Notiz : Wir können auch LEFT OUTER JOIN anstelle von LEFT JOIN verwenden, beide sind gleich.

Left_Join

LEFT JOIN-Beispiel

Schauen wir uns das Beispiel der LEFT JOIN-Klausel an und verstehen, wie sie funktioniert

  SELECT   Student.NAME,StudentCourse.COURSE_ID    FROM   Student   LEFT JOIN   StudentCourse    ON   StudentCourse.ROLL_NO = Student.ROLL_NO;>

Ausgabe :

SQL-Links-Join-Beispielausgabe

SQL-RECHTER JOIN

RICHTIG BEITRETEN Gibt alle Zeilen der Tabelle auf der rechten Seite des Joins und passende Zeilen für die Tabelle auf der linken Seite des Joins zurück. Es ist LEFT JOIN sehr ähnlich. Für die Zeilen, für die es auf der linken Seite keine passende Zeile gibt, Die Ergebnismenge enthält Null . RIGHT JOIN wird auch als RIGHT OUTER JOIN bezeichnet.

Syntax:

Die Syntax von RIGHT JOIN in SQL lautet:

  SELECT   table1.column1,table1.column2,table2.column1,....   FROM   table1    RIGHT JOIN   table2   ON   table1.matching_column = table2.matching_column;>

Hier,

  • Tabelle 1 : Erster Tisch.
  • Tabelle 2 : Zweiter Tisch
  • passende_Spalte : Spalte, die beiden Tabellen gemeinsam ist.

Notiz : Wir können auch verwenden RECHTER ÄUSSERER JOIN Anstelle von RIGHT JOIN sind beide gleich.

SQL Right Join visuelle Darstellung

RIGHT JOIN-Beispiel :

Schauen wir uns das Beispiel der RIGHT JOIN-Klausel an und verstehen, wie sie funktioniert

  SELECT   Student.NAME,StudentCourse.COURSE_ID    FROM   Student   RIGHT JOIN   StudentCourse    ON   StudentCourse.ROLL_NO = Student.ROLL_NO;>

Ausgabe:

Beispielausgabe für rechten Join

SQL-VOLLSTÄNDIGER JOIN

Vollständiger Beitritt Erstellt die Ergebnismenge durch Kombinieren der Ergebnisse von LEFT JOIN und RIGHT JOIN. Die Ergebnismenge enthält alle Zeilen aus beiden Tabellen. Für die Zeilen, für die es keine Übereinstimmung gibt, enthält die Ergebnismenge NULL Werte.

Full_Join

Syntax

Die Syntax von SQL FULL JOIN lautet:

  SELECT   table1.column1,table1.column2,table2.column1,....   FROM   table1    FULL JOIN   table2   ON   table1.matching_column = table2.matching_column;>

Hier,

  • Tabelle 1 : Erster Tisch.
  • Tabelle 2 : Zweiter Tisch
  • passende_Spalte : Spalte, die beiden Tabellen gemeinsam ist.

FULL JOIN-Beispiel

Schauen wir uns das Beispiel der FULL JOIN-Klausel an und verstehen, wie sie funktioniert

Netzwerktopologien
  SELECT   Student.NAME,StudentCourse.COURSE_ID    FROM   Student   FULL JOIN   StudentCourse    ON   StudentCourse.ROLL_NO = Student.ROLL_NO;>

Ausgabe:

NAME

KURS-ID

HARSCH

1

ÜBEN

2

RIYANKA

2

TIEF

3

SAPTARHI

1

DHANRAJ

NULL

ROHIT

NULL

Java-Mathe-Kurs

NIRAJ

NULL

NULL

4

NULL

5

NULL

4

SQL Natural-Join (?)

Natural Join kann Tabellen basierend auf den gemeinsamen Spalten in den zu verbindenden Tabellen verknüpfen. Eine natürliche Verknüpfung gibt alle Zeilen zurück, indem Werte in gemeinsamen Spalten mit demselben Namen und Datentyp der Spalten abgeglichen werden. Diese Spalte sollte in beiden Tabellen vorhanden sein.

Beide Tabellen müssen mindestens eine gemeinsame Spalte mit demselben Spaltennamen und demselben Datentyp haben.

Die beiden Tabellen werden mit verbunden Cross-Join .

DBMS sucht nach einer gemeinsamen Spalte mit demselben Namen und Datentyp. Tupel mit genau denselben Werten in gemeinsamen Spalten werden im Ergebnis beibehalten.

Natürliches Join-Beispiel:

Schauen Sie sich die beiden Tabellen unten an: Mitarbeiter und Abteilung

Mitarbeiter

Emp_id Emp_name Abteilungs-ID
1 RAM 10
2 Jon 30
3 Bob fünfzig

Abteilung

Abteilungs-ID Abteilungsname
10 ES
30 Personalwesen
40 TIS

Problem : Finden Sie alle Mitarbeiter und ihre jeweiligen Abteilungen.

Fetter Text CSS

Lösungsabfrage : (Mitarbeiter) ? (Abteilung)

Emp_id Emp_name Abteilungs-ID Abteilungs-ID Abteilungsname
1 RAM 10 10 ES
2 Jon 30 30 Personalwesen
Mitarbeiterdaten Abteilungsdaten

Zusätzliche Ressourcen

Um mehr über SQL JOIN zu erfahren, schauen Sie sich unsere Videos an und lesen Sie Artikel:

Linker JOIN (Video)
Right JOIN (Video)
Vollständiger JOIN (Video)
SQL | JOIN (kartesischer Join, Selbstjoin)