Wissenspunkte zum Prinzip der MySQL-Join-Abfrage

Wissenspunkte zum Prinzip der MySQL-Join-Abfrage

Mysql Join-Abfrage

1. Grundlegende Konzepte

Verbinden Sie die einzelnen Zeilen der beiden Tabellen paarweise horizontal, um die Ergebnisse aller Zeilen zu erhalten.

Annahmen:

Tabelle A hat n1 Zeilen und m1 Spalten;

Tabelle B hat n2 Zeilen und m2 Spalten;

Nachdem Tabelle A und Tabelle B „verbunden“ sind, haben wir:

n1*n2 Zeilen;

m1+m2 Spalten.

2. Das Ergebnis nach der Verbindung sieht ungefähr so ​​aus:

3. Grundform der Join-Abfrage: aus Tabelle 1 [Join-Methode] Join-Tabelle 2 [unter Join-Bedingung] Grundform der Join-Abfrage: aus Tabelle 1 [Join-Methode] Join-Tabelle 2 [unter Join-Bedingung]

1. Klassifizierung von Verbindungsanfragen

Querverbindung

Tatsächlich sind es „alle Daten“, die nach dem Verbinden zweier Tabellen gemäß dem Grundkonzept der Verbindung erhalten werden, ohne dass es zu einem „Filtern“ des Ergebnisses kommt – mit Filtern wird die Verbindungsbedingung gemeint.

Das heißt, ein Cross Join ist ein unbedingter „Join aller“ – auch als kartesisches Produkt bekannt.

Kreuzverbindungen haben im Allgemeinen keinen praktischen Wert, da nach der Verbindung der Daten die Bedeutung der einzelnen Datenzeilen „verloren“ gehen kann.

bilden:

von Tabelle1 [kreuzen] Tabelle2 verbinden;

oder:

aus Tabelle1, Tabelle2;

Innerer Join

bilden:

von Tabelle1 [inner] Verknüpfung mit Tabelle2 auf Tabelle1.Feld1 = Tabelle2.Feld2;

Bedeutung:

Holen Sie sich die Daten der Zeilen, die die festgelegten Verbindungsbedingungen (die Bedingungen nach „Ein“) im Ergebnis einer „Querverbindung“ erfüllen.

Cross Joins enthalten häufig „bedeutungslose Daten“, wie im Folgenden beschrieben:

2. Schauen Sie sich die Ergebnisse der inneren Verbindung an:

3. Das Ergebnis ist:

4. Es ist ersichtlich, dass es beim Inner Join tatsächlich darum geht, die „sinnvollen“ Datenzeilen in den Datenergebnissen eines Cross Join zu finden. Bei einem Cross Join sind einige Daten aussagekräftig, während andere bedeutungslos sind (fehlerhafte Daten).

Bitte beachten Sie jedoch:

  • 1. Diese Verbindungsbedingung wird nicht willkürlich festgelegt, sondern muss entsprechend der tatsächlichen Beziehung zwischen den Tabellen festgelegt werden. Normalerweise besteht die Beziehung darin, dass die Werte der beiden Felder mit einer "Primär- und Fremdschlüsselbeziehung" zwischen den beiden Tabellen gleich sind.
  • 2. Es ist ersichtlich, dass die Verbindungsabfrage eine inhärente logische Konsistenz mit der zuvor gelernten "Fremdschlüsselbeziehung" aufweist.
  • 3. Wenn wir jedoch einen inneren Join durchführen, ist es nicht erforderlich, dass die beiden Tabellen eine Fremdschlüsselbeziehung haben „müssen“ – wir verstehen aus praktischer Sicht lediglich, dass sie eine Fremdschlüsselbeziehung (Datenbeziehung) haben und dass ihre Beziehung hergestellt wird, wenn bei der Abfrage ein innerer Join verwendet wird. Es ist ersichtlich, dass es beim Inner Join tatsächlich darum geht, die „sinnvollen“ Datenzeilen in den Datenergebnissen eines Cross Join zu finden. Bei einem Cross Join sind einige Daten aussagekräftig, während andere bedeutungslos sind (fehlerhafte Daten).

Das könnte Sie auch interessieren:
  • Tiefgreifendes Verständnis der MySQL-Selbstverbindung und Join-Assoziation
  • Analyse der Verwendung mehrerer MySQL-Left-Join-Abfragen
  • MySQL-Optimierung: Join statt Unterabfrage verwenden
  • MySQL-Abfrageoptimierung: Einführung in das Sortierlimit für Join-Abfragen (Join-, Order-by- und Limit-Anweisung)
  • Detailliertes Tutorial zur Verwendung der JOIN-Anweisung zum Ausführen von Verbindungsvorgängen in MySQL
  • MySQL-Join-Abfragesyntax und Beispiele
  • Zusammenfassung mehrerer häufig verwendeter Verbindungsmethoden in MySQL

<<:  CentOS7-Installations-GUI-Schnittstelle und Implementierung der Remote-Verbindung

>>:  JavaScript-Canvas zum Erzielen eines Regentropfeneffekts

Artikel empfehlen

Eine kurze Diskussion über die Fallstricke der React UseEffect-Abschließung

Problemcode Schauen Sie sich den Code eines durch...

Detaillierte Erklärung zur Verwendung von JavaScript-Funktionen

Inhaltsverzeichnis 1. Deklarieren Sie eine Funkti...

Einführung, Installation und Verwendung von Hyper-V (detaillierte Abbildungen)

Vorwort: Als Gigant in der IT-Branche ist Microso...

So verwenden Sie den Linux-Befehl md5sum

01. Befehlsübersicht md5sum - MD5-Prüfcode berech...

Vertieftes Verständnis davon in JavaScript

Vertieftes Verständnis davon in Js JavaScript Ber...

MySQL implementiert eine Beispielmethode zum Anmelden ohne Kennwort

Spezifische Methode: Schritt 1: Stoppen Sie den M...

Vue und React im Detail

Inhaltsverzeichnis 1. Panorama II. Hintergrund 1....

So implementieren Sie die Kommunikation zwischen Docker-Containern

Szenario: Eine Laradock-Entwicklungsumgebung (php...

Fünf Möglichkeiten zum Durchlaufen von JavaScript-Arrays

Inhaltsverzeichnis 1. for-Schleife: grundlegend u...

Detaillierte Erläuterung des Vuex-Gesamtfalls

Inhaltsverzeichnis 1. Einleitung 2. Vorteile 3. N...