Detaillierte Erklärung der vier Arten von MySQL-Verbindungen und Multi-Table-Abfragen

Detaillierte Erklärung der vier Arten von MySQL-Verbindungen und Multi-Table-Abfragen

MySQL Inner Join, Left Join, Right Join, Outer Join, Abfrage mehrerer Tabellen

Build-Umgebung:

Tabelle t_emp erstellen(
	id int Primärschlüssel, 
	Name varchar(20),
	deptId int
);
Tabelle t_dept erstellen(
	id int Primärschlüssel,
	Name varchar(20)
);
einfügen in t_dept(id, name) values(1, 'Designabteilung');
einfügen in t_dept(id, name) values(2, 'Entwicklungsabteilung');
einfügen in t_dept(id, name) values(3, 'Testabteilung');
einfügen in t_emp(id, name, deptId) values(1, 'Name', 1);
einfügen in t_emp(id, name, deptId) Werte(2, 'Li Si', 2);
einfügen in t_emp(id, name, deptId) values(3, 'Name', 0);
# ps: Der Einfachheit halber wird die Tabelle t_emp als Tabelle A und die Tabelle t_dept als Tabelle B bezeichnet

Inhaltsverzeichnis

1. Innerer Join (A ∩ B)

[Bildübertragung über externen Link fehlgeschlagen. Die Quellsite verfügt möglicherweise über einen Anti-Hotlink-Mechanismus. Es wird empfohlen, das Bild zu speichern und direkt hochzuladen (img-0cqsICkR-1619189927045)(9mysql_multi-table query_inner join_right join_left join_nested query.assets/20190805175111307.png)]

Wählen Sie * FROM t_emp e INNER JOIN t_dept d ON e.deptId = d.id; 

[Bildübertragung über externen Link fehlgeschlagen. Die Quellsite verfügt möglicherweise über einen Anti-Hotlink-Mechanismus. Es wird empfohlen, das Bild zu speichern und direkt hochzuladen (img-YVymu987-1619189927047)(9mysql_multi-table query_inner join_right join_left join_nested query.assets/20190805175234304.png)]

2. LEFT JOIN Linker äußerer Join (A alle)

[Bildübertragung über externen Link fehlgeschlagen. Die Quellsite verfügt möglicherweise über einen Anti-Hotlink-Mechanismus. Es wird empfohlen, das Bild zu speichern und direkt hochzuladen (img-860jyRX1-1619189927049)(9mysql_multi-table query_inner join_right join_left join_nested query.assets/20190805175441802.png)]

Wählen Sie * FROM t_emp e LEFT JOIN t_dept d ON e.deptId = d.id; 

[Bildübertragung über externen Link fehlgeschlagen. Die Quellsite verfügt möglicherweise über einen Anti-Hotlink-Mechanismus. Es wird empfohlen, das Bild zu speichern und direkt hochzuladen (img-PXjhiYYa-1619189927051)(9mysql_multi-table query_inner join_right join_left join_nested query.assets/20190805175712415.png)]

3. RIGHT JOIN Rechter äußerer Join (B Alle)

[Bildübertragung über externen Link fehlgeschlagen. Die Quellsite verfügt möglicherweise über einen Anti-Hotlink-Mechanismus. Es wird empfohlen, das Bild zu speichern und direkt hochzuladen (img-s0OFZKj1-1619189927054) (9mysql_multi-table query_inner join_right join_left join_nested query.assets/20190805175813118.png)]

Wählen Sie * aus t_emp e RIGHT JOIN t_dept d ON e.deptId = d.id; 

[Bildübertragung über externen Link fehlgeschlagen. Die Quellsite verfügt möglicherweise über einen Anti-Hotlink-Mechanismus. Es wird empfohlen, das Bild zu speichern und direkt hochzuladen (img-bx74QMwd-1619189927056)(9mysql_multi-table query_inner join_right join_left join_nested query.assets/20190805175959230.png)]

4. FULL JOIN Vollständiger äußerer Join (A + B)

[Bildübertragung über externen Link fehlgeschlagen. Die Quellsite verfügt möglicherweise über einen Anti-Hotlink-Mechanismus. Es wird empfohlen, das Bild zu speichern und direkt hochzuladen (img-b125K8dF-1619189927057) (9mysql_multi-table query_inner join_right join_left join_nested query.assets/20190805180116571.png)]

Wählen Sie * aus t_emp e LEFT JOIN t_dept d 
ON e.deptId = d.id UNION 
Wählen Sie * aus t_emp e RIGHT JOIN t_dept d ON e.deptId = d.id; 

[Bildübertragung über externen Link fehlgeschlagen. Die Quellsite verfügt möglicherweise über einen Anti-Hotlink-Mechanismus. Es wird empfohlen, das Bild zu speichern und direkt hochzuladen (img-qLSli8R9-1619189927058) (9mysql_multi-table query_inner join_right join_left join_nested query.assets/20190805180416613.png)]

5. LEFT Excluding JOIN (A - B, d.h. eindeutig für Tabelle A) +

[Bildübertragung über externen Link fehlgeschlagen. Die Quellsite verfügt möglicherweise über einen Anti-Hotlink-Mechanismus. Es wird empfohlen, das Bild zu speichern und direkt hochzuladen (img-NQFvqcNu-1619189927060)(9mysql_multi-table query_inner join_right join_left join_nested query.assets/20190805180611367.png)]

SELECT * FROM t_emp e LEFT JOIN t_dept d ON e.deptId= d.id WHERE d.id ist null; 

Bildbeschreibung hier einfügen

6. RIGHT Excluding JOIN (B - A, d. h. nur Tabelle B)

[Bildübertragung über externen Link fehlgeschlagen. Die Quellsite verfügt möglicherweise über einen Anti-Hotlink-Mechanismus. Es wird empfohlen, das Bild zu speichern und direkt hochzuladen (img-0Ak37mwF-1619189927062)(9mysql_multi-table query_inner join_right join_left join_nested query.assets/20190805181033398.png)]

SELECT * FROM t_emp e RIGHT JOIN t_dept d ON e.deptId= d.id WHERE e.id ist null; 

[Bildübertragung über externen Link fehlgeschlagen. Die Quellsite verfügt möglicherweise über einen Anti-Hotlink-Mechanismus. Es wird empfohlen, das Bild zu speichern und direkt hochzuladen (img-7czqoOP5-1619189927062)(9mysql_multi-table query_inner join_right join_left join_nested query.assets/20190805181145897.png)]

7. OUTER Excluding JOIN (A und B sind einander eindeutig)

[Bildübertragung über externen Link fehlgeschlagen. Die Quellsite verfügt möglicherweise über einen Anti-Hotlink-Mechanismus. Es wird empfohlen, das Bild zu speichern und direkt hochzuladen (img-9YEEUSOD-1619189927063)(9mysql_multi-table query_inner join_right join_left join_nested query.assets/20190805181255259.png)]

SELECT * FROM t_emp e LEFT JOIN t_dept d ON e.deptId = d.id WHERE d.id ist null
UNION
SELECT * FROM t_emp e RIGHT JOIN t_dept d ON e.deptId= d.id WHERE e.id ist null; 

[Bildübertragung über externen Link fehlgeschlagen. Die Quellsite verfügt möglicherweise über einen Anti-Hotlink-Mechanismus. Es wird empfohlen, das Bild zu speichern und direkt hochzuladen (img-dzO9X4QC-1619189927064)(9mysql_multi-table query_inner join_right join_left join_nested query.assets/2019080518143030.png)]

Zusammenfassen

Dieser Artikel endet hier. Ich hoffe, er kann Ihnen helfen. Ich hoffe auch, dass Sie mehr Inhalten auf 123WORDPRESS.COM mehr Aufmerksamkeit schenken können!

Das könnte Sie auch interessieren:
  • MySQL-Unterabfrage und Details zur Verknüpfungstabelle
  • Vergleich der Effizienz zwischen Einzeltabellenabfrage und Mehrtabellen-Joinabfrage in der MySql-Datenbank
  • Probleme mit Join-Abfragen und Unterabfragen in MySQL
  • Detaillierte Erläuterung der MySQL-Multitabellen-Joinabfrage
  • MySQL-Verbindungsabfrage von den Grundlagen bis zum Fortgeschrittenen

<<:  Gedanken zu copy_{to, from}_user() im Linux-Kernel

>>:  Analyse der Probleme und Lösungen für wiederholte Übermittlung, wiederholte Aktualisierung und Backoff-Verhinderung

Artikel empfehlen

Detaillierte Erklärung zur Interpretation der Nginx-Konfigurationsdatei

Die Nginx-Konfigurationsdatei ist hauptsächlich i...

Verständnis und Anwendungsszenarien von ES6-Erweiterungsoperatoren

Inhaltsverzeichnis 1. Ersetzen Sie die Apply-Meth...

Reines js, um den Effekt eines Karussells zu erzielen

In diesem Artikel wird der spezifische Code von j...

Tutorial zur Installation des Tomcat-Servers unter Windows

1 Herunterladen und vorbereiten Zuerst müssen wir...

MySQLs konzeptionelles Verständnis verschiedener Sperren

Optimistisches Sperren Optimistisches Sperren wir...

Installieren Sie die virtuelle CentOS7-Maschine unter Win10

1. Laden Sie die VMware Workstation 64-Version he...

Die CSS-Priorität der Webseite wird für Sie ausführlich erklärt

Bevor wir über die CSS-Priorität sprechen, müssen...

W3C Tutorial (7): W3C XSL Aktivitäten

Ein Stylesheet beschreibt, wie ein Dokument angez...

Gängige Reparaturmethoden für die Trennung der MySQL Master-Slave-Replikation

Inhaltsverzeichnis 01 Problembeschreibung 02 Lösu...

Grundlegende Verwendung von exists, in und any in MySQL

【1】existiert Verwenden Sie eine Schleife, um die ...

So führen Sie .sh-Dateien im Linux-System aus

Es gibt zwei Möglichkeiten, .sh-Dateien im Linux-...

HTML-Tabellen-Markup-Tutorial (14): Tabellenkopf

<br />In der HTML-Sprache können Sie der Tab...

Beispiel zur Erhöhung des Swap-Speichers im CentOS7-System

Vorwort Swap ist eine spezielle Datei (oder Parti...