sql join

Erläuterung der SQL JOIN-Typen

Stefan
8 Min Read
sql join

Wenn Sie mit Datenbanken arbeiten, müssen Sie wahrscheinlich irgendwann SQL JOINs verwenden. Dieses Handbuch bietet einen kurzen Überblick über SQL JOINs und stellt Ihnen einige der am häufigsten verwendeten JOIN-Typen vor.

SQL JOIN-Definition und Verwendung 

Beginnen wir mit einem Überblick darüber, was eine Datenbank ist. Eine Datenbank ist eine Sammlung verschiedener Tabellen, in denen unterschiedliche Arten von Informationen gespeichert sind. Die JOIN-Klausel wird verwendet, wenn Daten aus verwandten Tabellen in einer Datenbank abgerufen werden. Die SQL JOIN-Klausel ist komplexer als eine einfache Abfrage, die Daten aus einer einzelnen Tabelle abruft, da sie Daten aus mehreren Tabellen abruft. 

Arten von SQL JOINs mit Beispielen

Abhängig von den gewünschten Ergebnissen können Sie zwischen vier Typen von SQL JOINs wählen: Inner JOIN, Left Outer JOIN, Right Outer JOIN und Full Outer JOIN. Sehen Sie sich an, wie jeder funktioniert, und sehen Sie sich einige Beispiele für SQL JOIN-Klauseln an:

Innere 

Inner JOINs kombinieren zwei Tabellen auf der Grundlage eines gemeinsamen Schlüssels. Wenn Sie beispielsweise eine Tabelle mit einer Spalte namens „Benutzer-ID“ hätten und jede Benutzer-ID für einen Benutzer eindeutig wäre, könnten Sie diese Tabelle mit einer anderen Tabelle mit einer Spalte „Benutzer-ID“ verknüpfen, um die mit jedem Benutzer verknüpften Informationen zu finden. Dieses Beispiel zeigt, wie Sie eine Inner JOIN-Klausel verwenden, um zwei Tabellen zu verknüpfen:

SELECT * FROM Tabelle1 INNER JOIN Tabelle2 ON Tabelle1.id = Tabelle2.id;

Left JOINs geben alle Zeilen aus der ersten Tabelle zurück und nur die Zeilen in der zweiten Tabelle, die übereinstimmen. Dieses Beispiel zeigt, wie Sie eine Left Outer JOIN-Klausel verwenden, um zwei Tabellen zu verknüpfen:

SELECT * FROM Tabelle1 LEFT OUTER JOIN Tabelle2 ON Tabelle1.id = Tabelle2.Benutzer-ID

Rechts außen

Right JOINs sind logisch das Gegenteil von Left JOINs – sie geben alle Zeilen aus der zweiten Tabelle zurück und nur die Zeilen in der ersten Tabelle, die übereinstimmen. Dieses Beispiel zeigt, wie Sie eine Right Outer JOIN-Klausel verwenden, um zwei Tabellen zu verbinden:

SELECT * FROM Tabelle1 RIGHT OUTER JOIN Tabelle2 ON Tabelle1.id = Tabelle2.Benutzer-ID

Volle Außenseite

Vollständige JOINs kombinieren sowohl linke als auch rechte Verknüpfungen, indem sie alle Zeilen aus beiden Tabellen zurückgeben, solange mindestens eine Übereinstimmung zwischen ihnen besteht. Dieses Beispiel zeigt, wie Sie eine vollständige äußere JOIN-Klausel verwenden, um zwei Tabellen zu verknüpfen:

SELECT * FROM Tabelle1 FULL OUTER JOIN Tabelle2 ON Tabelle1.id = Tabelle2.Benutzer-ID

Es gibt viele Fälle, in denen SQL JOINs verwendet werden können, und sie sind von entscheidender Bedeutung, wenn Sie Beziehungen zwischen Tabellen in Ihrer Datenbank abbilden. 

Beispiel für eine Anwendung der SQL JOIN-Klausel

Stellen Sie sich eine Tabelle vor, in der persönliche Informationen (Name, Adresse, Telefonnummer) gespeichert sind, und eine andere Tabelle, in der Informationen zu den Positionen der Mitarbeiter gespeichert sind. Angenommen, jede Zeile in der Mitarbeitertabelle stellt einen einzelnen Mitarbeiter dar. In diesem Fall ist es sinnvoll, die persönlichen Daten der Mitarbeiter in einer anderen Tabelle zu speichern, da eine Person mehr als einmal dargestellt werden kann (eine Zeile pro Position, wenn sie die Rolle wechselt).

Angenommen, Sie müssen eine Anwendung schreiben, die die Namen und Adressen der Mitarbeiter zusammen mit ihrer aktuellen Position, früheren Positionen und dem Einstellungsdatum anzeigt. Um diese Daten aus der Datenbank abzurufen, müssen Sie diese beiden Tabellen mithilfe einiger gemeinsamer Attribute (z. B. Mitarbeiter-ID) miteinander verknüpfen.

Ein E-Commerce-Beispiel für die Verwendung von SQL JOIN

Stellen Sie sich nun vor, Sie haben einen Online-Shop und möchten wissen, welche Produkte Ihre Kunden gekauft haben. Sie hätten dann zwei Tabellen: eine mit Informationen über Ihre Kunden und eine andere mit Informationen über Ihre Produkte. Sie können einen Inner JOIN verwenden, um alle Datensätze abzurufen, die in diesen beiden Tabellen vorkommen. Verwenden Sie dazu die folgende Syntax:

Wählen Sie * aus den inneren Kundenjoin-Bestellungen auf Kunden-ID = Bestellungen.Kunden-ID;

Beispiel mit Code

Stellen Sie sich eine Situation vor, in der Sie zwei Datenbanktabellen haben, eine mit dem Namen „Studenten“ und die andere mit dem Namen „Noten“. Die Tabelle „Studenten“ enthält einen Datensatz für jeden Studenten: seine ID-Nummer, seinen Namen, sein Hauptfach usw. Die Tabelle „Noten“ enthält einen Datensatz für die Note jedes Studenten in verschiedenen Kursen: seine Matrikelnummer, den Kurs, den er belegt hat, und seine Note in diesem Kurs.

In SQL würden Sie eine Abfrage zum Suchen der Namen aller Studenten mit der Note 100 wie folgt schreiben:

  • WÄHLEN Sie „Studenten.Studentenname“ aus „Studenten“.
  • JOIN-Noten ON Students.StudentID=Noten.StudentID.
  • WO Noten.Note=100.

Kombinieren von JOINs 

Es gibt viele Möglichkeiten, Ergebnisse aus zwei oder mehr Abfragen zu kombinieren. Hier sind die gängigsten:

  • Verwenden Sie eine JOIN-Anweisung, um Daten aus mehreren Tabellen in einer SELECT-Anweisung zu kombinieren.
  • Verwenden Sie eine Unterabfrage, um Daten aus einer Tabelle basierend auf Werten aus einer anderen Tabelle abzurufen.
  • Verwenden Sie eine UNION-Anweisung, um Daten aus mehreren Tabellen (oder Abfragen) zu kombinieren.
  • Eine JOIN-Anweisung kann mit jedem anderen Anweisungstyp verwendet werden, den SQL unterstützt, einschließlich UPDATE und DELETE.

Tipps zum weiteren Erlernen von SQL JOINs

Wenn Sie SQL-Projekte durchführen oder einen Job mit SQL anstreben, müssen Sie möglicherweise Ihr Wissen und Ihre Fähigkeiten erweitern. Stellen Sie sicher, dass Sie mit zuverlässigen Materialien lernen. Prüfen Sie, ob der Trainer oder Ausbilder über fortgeschrittene SQL-Kenntnisse verfügt. Lesen Sie Rezensionen und analysieren Sie die Kursinhalte oder Lernstruktur.

Anleitungen 

Im Internet sind viele Tutorials verfügbar, die Ihnen beim Erlernen von SQL helfen können. Diese Tutorials sind oft kostenlos und werden von kompetenten Personen auf ihrem Gebiet bereitgestellt. Das Lernen durch Tutorials erfordert etwas Planung. Wenn Sie sich für diesen Weg entscheiden, stellen Sie sicher, dass Sie einer logischen Lernstruktur folgen, um alle grundlegenden Bausteine ​​für die Arbeit mit SQL zu erlernen. Sie benötigen beispielsweise ein solides Verständnis von Datenbanken.

Online-Kurse

Es gibt viele Online-Kurse, mit denen Sie SQL lernen können. Einige dieser Kurse sind kostenlos, andere kostenpflichtig. Einige der kostenpflichtigen Kurse sind umfassend und bieten ein gutes Preis-Leistungs-Verhältnis. Kurse bieten Ihnen einen strukturierten Lernprozess und können eine hervorragende Möglichkeit sein, Wissen aufzubauen. 

Zertifizierungen 

Es stehen zahlreiche SQL-Zertifizierungen zur Auswahl. Mit Zertifikaten können Sie Arbeitgebern nachweisen, dass Sie eine Prüfung bestanden haben, die Ihre SQL-Kenntnisse prüft. Dies kann besonders hilfreich sein, wenn Ihr Lebenslauf nicht viel SQL-Erfahrung enthält.

Muss lesen: Paula Dietz: Die betrogene Ehefrau des BTK-Killers

Nächste Schritte 

Wenn Sie mehr über SQL erfahren möchten, sollten Sie einen der Kurse auf Coursera belegen. Der Kurs „Einführung in Structured Query Language (SQL)“ der University of Michigan ist ein guter Einstieg. In diesem Kurs lernen Sie Schritt für Schritt, wie Sie eine MySQL-Datenbank erstellen, und erfahren mehr über die SQL-Sprache.