SQL JOIN-Befehle – für effiziente Datenanalyse und Berichterstellung (2024)

SQL JOIN-Befehle zählen bei der Analyse und Bearbeitung von relationalen Datenbanken zu den wichtigsten SQL-Befehlen. Sie ermöglichen es, verknüpfte Daten in mehreren Tabellen abzufragen und in Ergebnistabellen zusammenzuführen. Je nach Anwendungsfall kommen hierzu JOIN-Befehle wie INNER JOIN, OUTER JOIN, LEFT JOIN, RIGHT JOIN oder FULL JOIN zum Einsatz.

Was sind SQL JOIN-Befehle?

Für die Arbeit mit Datenbanken – ganz gleich, ob On-Premises oder per Cloud – gilt die Programmier- und Datenbanksprache SQL als Standard. Sie ermöglicht es nicht nur, relationale Datenbanken zu erstellen, sondern auch Datenabfragen mittels diverser SQL-Befehle durchzuführen. Zu den wichtigsten und am häufigsten verwendeten Befehlen zählt die Kategorie der SQL JOINS.

Bei SQL JOINS handelt es sich um Befehle, mit denen Sie Daten tabellenübergreifend abfragen, verknüpfen und aussagekräftig zusammenführen. Als Voraussetzung gilt lediglich eine logische Verbindung zwischen den Tabellen. Diese Verbindung stellen entsprechende Primär- und Fremdschlüssel her, über die sich Daten mittels JOIN-Befehle zusammenführen lassen.

Hinweis

Primär- und Fremdschlüssel bilden wichtige Kennwerte für SQL JOINS. Primärschlüssel identifizieren Zeilen eindeutig und dürfen keine Nullwerte enthalten. Fremdschlüssel stellen eine Verbindung zwischen Tabellen her. Beispiel: In einer Angestellten-Tabelle dient „Angestellten ID“ als Primärschlüssel. In einer KFZ-Tabelle ist „KFZ ID“ der Primärschlüssel. Beide Tabellen lassen sich mit „KFZ ID“ als Fremdschlüssel in der Angestellten-Tabelle verknüpfen.

Welche Arten von SQL JOIN-Befehlen gibt es?

Je nach Anwendungsfall bieten sich verschiedene JOIN-Befehle an. Zunächst werfen wir einen Blick auf die grundlegenden Parameter:

  • SELECT: Legt Spalten fest, die für SQL JOIN in Frage kommen. Mit einem Asterisk (*) lässt sich auch der ganze Datensatz auswählen.
  • FROM: Legt die Tabelle fest, aus der Daten mit einer weiteren Tabelle zusammengeführt werden.
  • JOIN Befehl: Erzeugt gemäß dem JOIN-Befehl eine Zieltabelle, die ausgewählte Daten verknüpft, zusammenführt oder vergleicht.
  • ON: Legt fest, nach welcher JOIN-Bedingung, abgerufene Daten zusammengeführt werden.

Die grundlegende Syntax enthält bei den meisten SQL JOIN-Befehlen dieselben oder ähnliche Parameter und sieht wie folgt aus:

SELECT spalteA, spalteB, …FROM tabelleAJOIN-Befehl tabelleBON tabelleA.spalte = tabelleB.spalte

sql

Tipp

Sie suchen nach einer sicheren, leistungsstarken Lösung für Ihr Datenbank-Management-System? Dann bietet Ihnen SQL Server Hosting von IONOS die passenden Server- und Hosting-Angebote mit deutschen Datenschutzstandards – dazu zählen Cloud Server, vServer (VPS), Dedicated Server oder Linux Hosting mit MSSQL, MySQL oder MariaDB

vServer / VPS

Vollständig virtualisiert mit Root-Zugriff

  • Bis zu 1 Gbit/s Bandbreite & unbegrenzt Traffic
  • Schneller NVMe-SSD-Speicher
  • Kostenlose Plesk Web Host Edition

SQL JOIN-Befehle – für effiziente Datenanalyse und Berichterstellung (1)

Zu den wichtigsten SQL JOIN-Befehlen zählen die im Folgenden vorgestellten.

SQL INNER JOIN

Mit diesem Befehl führen Sie Daten aus zwei Tabellen in einer Ergebnistabelle zusammen, wenn zwei übereinstimmende Werte in einer gemeinsamen Spalte vorliegen. Der INNER JOIN dient als häufigster JOIN-Befehl und als Standardeinstellung, wenn Sie keinen konkreten JOIN-Typ wählen.

Praktisches Beispiel:

Der INNER JOIN kommt für eine Tabelle „Bestellungen“ mit den Spalten „Bestellnummer“, „KundenID“, „ProduktID“ und „Bestelldatum“ sowie für eine Tabelle „Kunden“ mit den Spalten „KundenID“, „Name“ und „Adresse“ zum Einsatz. Die Spalte „KundenID“ dient in „Kunden“ als Primärschlüssel und in „Bestellungen“ als Fremdschlüssel. Der INNER JOIN führt anhand der KundenID alle Bestellungen und Kundendaten von Kunden und Kundinnen in der Ergebnistabelle zusammen.

Der SQL INNER JOIN-Befehl sieht wie folgt aus:

SELECT bestellungen.bestellnummer, kunden.name, bestellungen.produktid, bestellungen.bestelldatumFROM bestellungenINNER JOIN kundenON bestellungen.kundenid = kunden.kundenid

sql

OUTER JOIN

OUTER JOIN dient als Oberbegriff für die Befehle SQL LEFT JOIN, RIGHT JOIN und FULL JOIN. Der SQL OUTER JOIN führt Gegensatz zum INNER JOIN nicht nur übereinstimmende Zeilen, sondern auch nicht übereinstimmende Zeilen per NULL-Wert zusammen. Eine detaillierte Erklärung folgt unter LEFT JOIN, OUTER JOIN und FULL JOIN.

SQL LEFT JOIN

Der Befehl LEFT JOIN verknüpft alle Daten einer linken Tabelle mit übereinstimmenden Daten der rechten Tabelle. Bei nicht übereinstimmenden Daten gibt der Befehl ein NULL-Wert aus.

Praktisches Beispiel:

Der SQL LEFT JOIN führt sowohl übereinstimmende als auch nicht übereinstimmende Datensätze aus einer linken Tabelle „Kunden“ mit einer rechten Tabelle „Kfz“ anhand der gemeinsamen Spalte „KfzID“ zusammen. Im Gegensatz zum INNER JOIN gibt der Befehl auch nicht übereinstimmende Daten mit dem Wert NULL aus.

Der SQL LEFT JOIN-Befehl sieht wie folgt aus:

SELECT *FROM kundenINNER JOIN kfzON kunden.kfzid = kfz.kfzid

sql

SQL RIGHT JOIN

Der Befehl RIGHT JOIN verknüpft Daten aus der rechten Tabelle mit übereinstimmenden Daten der linken Tabelle. Bei Nichtübereinstimmung steht ebenfalls ein NULL-Wert in Spalten der linken Tabelle.

Praktisches Beispiel:

Der SQL RIGHT JOIN fügt anhand der KundenID zu Daten einer rechten Tabelle „Kunden“ alle ausgewählten Daten einer linken Tabelle „Bestellungen“ hinzu. Bei Nichtübereinstimmung gibt der Befehl den Wert NULL an – beispielsweise, wenn für eine KundenID weder Bestellungen noch Namen vorliegen.

Der SQL RIGHT JOIN-Befehl sieht wie folgt aus:

SELECT bestellungen.bestellnummer, kunden.name, bestellungen.produktid, bestellungen.bestelldatumFROM kundenRIGHT JOIN bestellungenON bestellungen.kundenid = kunden.kundenid

sql

SQL FULL JOIN

Der Befehl FULL JOIN stellt eine Kombination aus LEFT JOIN und RIGHT JOIN dar und ist auch als FULL OUTER JOIN bekannt. Der Befehl führt alle Datensätze und Spalten aus beiden Tabellen zusammen. Bei Nichtübereinstimmung gibt der Befehl NULL-Werte aus.

Praktisches Beispiel:

Der FULL JOIN führt alle übereinstimmenden sowie nicht übereinstimmenden Daten einer rechten Tabelle „Mitarbeiterinnen und Mitarbeiter“ mit einer linken Tabelle „Abteilung“ anhand der KundenID zusammen. Lässt sich keine Abteilung zuordnen, steht ein NULL-Wert bei Abteilung.

Der SQL FULL JOIN-Befehl sieht wie folgt aus:

SELECT *FROM mitarbeiterinnen und mitarbeiterFULL JOIN kundenON mitarbeiter.abteilungid = abteilung.abteilungid

sql

CROSS JOIN

Der CROSS JOIN ist auch als kartesischer JOIN bekannt. Er verknüpft sämtliche Datensätze der linken und rechten Tabelle unabhängig von Übereinstimmungen. Da er alle möglichen Kombinationen zurückgibt, braucht es keine On-Klausel für eine JOIN-Bedingung.

Praktisches Beispiel:

Der CROSS JOIN führt alle Daten der rechten Tabelle „Produkte“ mit der linken Tabelle „Bestellungen“ zusammen.

Der SQL CROSS JOIN-Befehl sieht wie folgt aus:

SELECT *FROM produkteCROSS JOIN bestellungen

sql

NATURAL JOIN

Der Befehl NATURAL JOIN verknüpft alle Datensätze von zwei Tabellen anhand gemeinsamer Spalten. Der Parameter ON entfällt, da eine gemeinsame Spalte keine Voraussetzung ist. Da der Befehl automatisch gemeinsame Spalten der Tabellen zusammenführt, entfällt die ON-Klausel.

Praktisches Beispiel:

Der NATURAL JOIN führt die Tabellen „Team“ und „Abteilung“ anhand gemeinsamer Spalten in zusammen. Der Befehl liefert nur Ergebnisse, wenn mindestens eine gemeinsame Spalte vorliegt.

SQL NATURAL JOIN sieht wie folgt aus:

SELECT *FROM bestellungenNATURAL JOIN kunden

sql

SQL SELF JOIN

Der Befehl SQL SELF JOIN verknüpft eine Tabelle mit sich selbst, indem er sie als linke und rechte Tabelle behandelt. Sie können daher grundsätzlich jeden anderen Befehl für eine SELF-JOIN-Operation nutzen. In der Syntax dienen t1 und t2 als Aliasses für eine rechte und linke Tabelle, da es sich um dieselbe Tabelle handelt.

Grundlegende Syntax am Beispiel LEFT JOIN:

SELECT *FROM tabelleA AS t1LEFT JOIN tabelleA AS t2ON t1.spaltename = t2.spaltenname

sql

Tipp

Um einen schnellen Einblick in die Anwendung von SQL zu bekommen, beachten Sie auch unsere SQL-Einführung mit Beispielen.

War dieser Artikel hilfreich?

SQL JOIN-Befehle – für effiziente Datenanalyse und Berichterstellung (2024)

References

Top Articles
Jewel Staite Tattoo
Rl Craft How To Tame A Dragon - February 2023 - Uptowncraftworks.com
Pet For Sale Craigslist
Faridpur Govt. Girls' High School, Faridpur Test Examination—2023; English : Paper II
Form V/Legends
Holly Ranch Aussie Farm
Vocabulario A Level 2 Pp 36 40 Answers Key
Smokeland West Warwick
B67 Bus Time
Tiger Island Hunting Club
Nier Automata Chapter Select Unlock
7 Fly Traps For Effective Pest Control
Directions To 401 East Chestnut Street Louisville Kentucky
Paradise leaked: An analysis of offshore data leaks
Craiglist Tulsa Ok
97226 Zip Code
Uconn Health Outlook
Outlet For The Thames Crossword
Jail View Sumter
yuba-sutter apartments / housing for rent - craigslist
Johnnie Walker Double Black Costco
Bn9 Weather Radar
Piri Leaked
Greensboro sit-in (1960) | History, Summary, Impact, & Facts
Arrest Gif
1773x / >
Cornedbeefapproved
Usa Massage Reviews
Jersey Shore Subreddit
Babydepot Registry
Ff14 Sage Stat Priority
Diggy Battlefield Of Gods
Urban Blight Crossword Clue
The Venus Flytrap: A Complete Care Guide
Sinfuldeeds Vietnamese Rmt
1-800-308-1977
Skill Boss Guru
Culver's of Whitewater, WI - W Main St
Cranston Sewer Tax
Gasoline Prices At Sam's Club
Tunica Inmate Roster Release
Kb Home The Overlook At Medio Creek
Noga Funeral Home Obituaries
Value Village Silver Spring Photos
6463896344
Rovert Wrestling
17 of the best things to do in Bozeman, Montana
Heat Wave and Summer Temperature Data for Oklahoma City, Oklahoma
Treatise On Jewelcrafting
Verilife Williamsport Reviews
Frank 26 Forum
Latest Posts
Article information

Author: Allyn Kozey

Last Updated:

Views: 5988

Rating: 4.2 / 5 (43 voted)

Reviews: 82% of readers found this page helpful

Author information

Name: Allyn Kozey

Birthday: 1993-12-21

Address: Suite 454 40343 Larson Union, Port Melia, TX 16164

Phone: +2456904400762

Job: Investor Administrator

Hobby: Sketching, Puzzles, Pet, Mountaineering, Skydiving, Dowsing, Sports

Introduction: My name is Allyn Kozey, I am a outstanding, colorful, adventurous, encouraging, zealous, tender, helpful person who loves writing and wants to share my knowledge and understanding with you.