Einführung
SQL-Joins können für Anfänger ein schwieriges Konzept sein. Wenn du noch nie Programmieren gelernt hast, Es kann Ihnen schwer fallen zu verstehen, welche Kombinationen enthalten sind SQL und die verschiedenen Arten von Gewerkschaften.
Aber als Aspirant oder Data-Science-Profi, Sie sollten ein solides Verständnis davon haben, was SQL-Joins sind und wie sie funktionieren. Creme, Sie werden es häufig verwenden, wenn die Datenwissenschaftsbranche die in verschiedenen Tabellen enthaltenen Daten schnell abruft und manipuliert.
In diesem Artikel, Ich werde zeigen, dass SQL-Joins wirklich einfach zu erlernen sind. Wir werden zuerst verstehen, was SQL-Joins sind, und dann werden wir uns die vier verschiedenen Arten von Joins ansehen, die Sie beherrschen müssen..
Möchten Sie die Grundlagen von SQL lernen und wie es in der Datenwissenschaft angewendet werden kann?? Schauen Sie sich den beliebten Kurs an SQL für Data Science.
Was sind SQL-Joins??
Lassen Sie uns zuerst die Millionen-Dollar-Frage beantworten, bevor wir uns die verschiedenen Arten von Joins in SQL ansehen.
Ich werde ein intuitives Beispiel nehmen, um zu erklären, was SQL-Joins sind. Betrachten Sie diese beiden Sammlungen:
Nehmen wir an, der blaue Kreis repräsentiert die Menge aller Kinder (KINDER) und das Grau steht für die Leute, die es lieben, Messi spielen zu sehen (MESSI). Wie würde ich vorgehen, wenn wir das Set aller Jungs haben wollten, die Messi gerne spielen sehen??
Es gibt einen sehr prozeduralen Weg, dieses Problem anzugehen:
- Zuerst, Wählen Sie alle verschiedenen Identifikatoren aus Messis Tabelle aus, die die innere Abfrage unten darstellen
- Nimm jede ID aus der Jungentabelle und vergleiche sie mit diesem Set.
- Wenn die ID mit einer von ihnen übereinstimmt, dann generieren Sie diese Zeile aus der Boys-Tabelle
Dies ist dem Konzept einer "for-Schleife" ziemlich ähnlich’ und es wird in SQL als Unterauswahl bezeichnet.
AUSWÄHLEN * VON JUNGS WO Ich würde IST IN (AUSWÄHLEN UNTERSCHEIDBAR Ich würde VON MESSI);
Aber in SQL, Es gibt einen anderen Weg, dieses Problem anzugehen.
Um zu beginnen, Kombinationen zu verstehen, wir müssen zuerst eine andere Perspektive auf das haben, was wir wirklich wollen. In etablierter Terminologie: wir wollen die Überschneidung von BOYS und MESSI. In grafischer Hinsicht, dies wird ausgedrückt als:
Wir interessieren uns für den himmlischen Teil, Wahrheit? Dieser Teil, o la drinnen Teil (Spur), Das sind alles Jungs, die es lieben, Messi . zu sehen. Alles, was wir jetzt tun müssen, ist dies in SQL auszudrücken:
AUSWÄHLEN * VON JUNGS INNERE BEITRETEN MESSI AN BOYS.id = MESSI.id;
Schau was (drinnen) Vorher beitreten? Es könnte nicht einfacher sein! Dies ist der intuitive Ansatz, um die Kombinationen zu verstehen.
Notiz: Venn-Diagramme werden nicht direkt auf SQL angewendet, da Elemente in Sammlungen (Die Tische) sie sind nicht identisch. Aber weil sie sich aufeinander beziehen, wir können Venn-Diagramme verwenden, um das Konzept besser zu verstehen.
Verschiedene Arten von Joins in SQL
Jetzt. Wir werden dies auf das große Ganze ausdehnen und die verschiedenen Arten von SQL-Joins kennenlernen. Betrachten Sie die folgenden Beispieltabellen:
1. INNER JOIN in SQL
Das haben wir im vorherigen Abschnitt behandelt. Inner Join gibt Datensätze zurück, die in beiden Tabellen übereinstimmende Werte haben:
Sehen wir uns die Ausgabe anhand des obigen Beispiels an:
AUSWÄHLEN * VON JUNGS INNERE BEITRETEN MESSI AN BOYS.id = MESSI.id;
PRODUKTION:
Wie ich bereits erwähnte, Inner Join ergibt den Schnittpunkt zweier Tabellen, nämlich, Zeilen, die in beiden Tabellen gemeinsam sind.
2. RECHTE VERBINDUNG (extern) und SQL
Angenommen, wir möchten die Identifizierung und den Namen aller Leute, die es lieben, Messi spielen zu sehen. Offensichtlich, Es gibt viele Möglichkeiten, diese Abfrage zu schreiben, aber wir werden es mit hilfe der gewerkschaften verstehen.
Mal sehen was die Ausgabe ist:
AUSWÄHLEN * VON JUNGS RECHTS BEITRETEN MESSI AN BOYS.id = MESSI.id;
PRODUKTION:
Kannst du hier herausfinden, was passiert ist? Der rechte äußere Join liefert uns die Zeilen, die in beiden Tabellen gemeinsam sind, sowie zusätzliche Zeilen aus Messis Tisch, die an der Kreuzung nicht vorhanden sind. Mit anderen Worten, Ein Right Join gibt alle Datensätze aus der rechten Tabelle und übereinstimmende Datensätze aus der linken Tabelle zurück.
3. LINKS (Äußere) JOIN in SQL
Nehmen wir an, wir wollen die Liste aller Jungs, die es lieben, Messi beim Spielen zuzusehen und Messi nicht gerne mit Joins spielen zu sehen..
Ich möchte, dass Sie das Endergebnis erraten, bevor Sie weiterlesen.
AUSWÄHLEN * VON JUNGS LINKS BEITRETEN MESSI AN BOYS.id = MESSI.id;
PRODUKTION:
Der linke äußere Join liefert uns die Zeilen, die in beiden Tabellen gemeinsam sind, sowie zusätzliche Zeilen aus der Boys-Tabelle, die nicht im Schnittpunkt vorhanden sind. Mit anderen Worten, ein linker Join gibt alle Datensätze aus der linken Tabelle und übereinstimmende Datensätze aus der rechten Tabelle zurück.
4. Komplette Vereinigung (AUSSEN) und SQL
Schließlich, Sagen wir wir wollen die Liste aller Leute, einschließlich Kinder, die es lieben, Messi beim Spielen zuzusehen.
Du kennst die Antwort sicher schon!!
AUSWÄHLEN * VON JUNGS VOLL AUSSEN BEITRETEN MESSI AN BOYS.id = MESSI.id;
PRODUKTION:
Perfekt! Ein Full Outer Join liefert uns die Zeilen, die in beiden Tabellen gemeinsam sind, sowie zusätzliche Zeilen aus beiden Tabellen, die nicht am Schnittpunkt vorhanden sind. Wir erhalten alle Datensätze, wenn es eine Übereinstimmung in der linken oder rechten Tabelle gibt.
Abschließende Anmerkungen
Möchten Sie erfahren, wie SQL in der Datenwissenschaft eingesetzt werden kann? Ich kann nur empfehlen, sich diesen tollen Kurs anzusehen: Strukturierte Abfragesprache (SQL) für Datenwissenschaft.
Wenn Sie Fragen oder Kommentare zu diesem Artikel haben, lass es mich im Kommentarbereich unten wissen und ich melde mich gerne bei dir.