Inner JOIN
Inner JOIN ist der am häufigsten verwendete Verbindungsvorgang. Mathematisch lässt sich dieser Satz wie folgt umschreiben: Aus der Perspektive der Mengentheorie benötigen wir den Schnittpunkt zweier Mengen und aus der Perspektive des kartesischen Produkts müssen wir die Elemente des kartesischen Produkts herausfiltern, die die ON-Bedingung erfüllen.
Inner Joins ähneln meiner Meinung nach Equijoins und sind ein besonderer Join unter den Inner Joins.
Der Unterschied zwischen Natural Joins und Equijoins. Was ist Natural Join?
Natural Join ist ein spezieller Equijoin, der erfordert, dass die in zwei Beziehungen verglichenen Komponenten derselben Attributgruppe angehören müssen und doppelte Attributspalten aus dem Ergebnis entfernt werden. Was ist ein Equijoin?
Equijoin ist eine gängige Verbindungsmethode für relationale Operations-Join-Operationen. Es handelt sich um einen Sonderfall einer bedingten Verbindung (oder θ-Verbindung), wenn der Verbindungsoperator „=“ ist, d. -
Fragen Sie die Daten mit den gleichen Attributen C B D in Tabelle aaa und Tabelle bbb ab
Von oben 2 Aus den Ergebnissen können wir schließen, dass Equijoin bestimmte Daten mit gleichen Werten aus der Schnittmenge zweier Tabellen auswählt. Unter Natural Join versteht man die Aufnahme von Daten mit denselben Attributen und gleichen Attributwerten in zwei Tabellen und die Eliminierung derselben Attributspalten.
So implementieren Sie Inner Join
Der erste Weg: where
SElect*from aaa,bbb WHERE aaa.C=bbb.C and aaa.D=bbb.D and aaa.E=bbb.E
Nach dem Login kopieren
Nach dem Login kopieren
Der zweite Weg: Inner Join
-- 自然连接用关键字 natural join
SELECT*from aaa natural join bbb;
Nach dem Login kopieren
Der dritte Weg: Join
SElect*from aaa,bbb WHERE aaa.C=bbb.C and aaa.D=bbb.D and aaa.E=bbb.E
Nach dem Login kopieren
Nach dem Login kopieren
Der vierte Weg: STRAIGHT_JOIN
select*from aaa inner join bbb on aaa.C=bbb.C and aaa.D=bbb.D and aaa.E=bbb.E;
Nach dem Login kopieren
Die folgenden drei haben den gleichen Effekt: Die dritte Art kann als Abkürzung der zweiten Art verstanden werden. Der Hauptunterschied zwischen dem vierten und dem zweiten Typ besteht in den unterschiedlichen Einfügemethoden. Die Leistung des vierten Typs ist etwas geringer vollständiger äußerer Join. Sie können in SQL-Anweisungen Left-Joins, Right-Joins und Full-Joins verwenden, um diese Funktion zu erreichen.
Left-Join
Was ist ein Left-Join?
LEFT JOIN bedeutet, den Schnittpunkt von Tabelle A und Tabelle B zu nehmen und die verbleibenden Daten in die linke Tabelle aufzunehmen. Noch aus der Perspektive des kartesischen Produkts müssen wir zuerst die Datensätze auswählen, die die Bedingungen der ON-Klausel erfüllen, und dann die verbleibenden Datensätze in Tabelle A auf der linken Seite hinzufügen
Code-Implementierung:
select*from aaa join bbb on aaa.C=bbb.C and aaa.D=bbb.D and aaa.E=bbb.E;
Nach dem Login kopieren
Ergebnis:
Right Join
Was ist ein Left Join?
In ähnlicher Weise entspricht RIGHT JOIN dem Erhalten der Schnittmenge von Tabelle A und Tabelle B sowie der verbleibenden Daten von Tabelle B. Bei der Beschreibung der richtigen Verknüpfung können Sie aus der Perspektive des kartesischen Produkts beginnen, d. h. die Datensätze auswählen, die die EIN-Bedingung erfüllen, und ihnen die nicht ausgewählten Datensätze in der rechten Tabelle hinzufügen
select*from aaa STRAIGHT_JOIN bbb on aaa.C=bbb.C and aaa.D=bbb.D and aaa.E=bbb.E;
Nach dem Login kopieren
Ergebnis:
Full Outer Join besteht darin, die Vereinigung der Mengen zweier Tabellen A und B zu finden. Aus Sicht des kartesischen Produkts besteht es darin, aus dem kartesischen Produkt die Datensätze auszuwählen, für die die ON-Klauselbedingung zutrifft, dann die verbleibenden Datensätze in der linken Tabelle hinzuzufügen und schließlich die verbleibenden Datensätze in der rechten Tabelle hinzuzufügen. Darüber hinaus unterstützt MySQL kein OUTER JOIN, wir können jedoch UNION-Operationen für die Ergebnisse von Left-Joins und Right-Joins implementieren.
Code-Implementierung:
select*from aaa left join bbb on aaa.C=bbb.C and aaa.D=bbb.D and aaa.E=bbb.E;
Nach dem Login kopieren
Ergebnis:
Das obige ist der detaillierte Inhalt vonWas ist eine MySQL-Verbindungsabfrage?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!