Mehrere Möglichkeiten zum Verbinden von Tabellen in MySQL

Mehrere Möglichkeiten zum Verbinden von Tabellen in MySQL

Die Verbindungsmethode in der MySQL-Tabelle ist eigentlich sehr einfach. Hier listen wir lediglich ihre Eigenschaften auf.

Tabellenverbindungen (JOIN) können in innere Verbindungen (JOIN/INNER JOIN) und äußere Verbindungen (LEFT JOIN/RIGHT JOIN) unterteilt werden.

Schauen wir uns zunächst die beiden Tabellen in dieser Demonstration an:

mysql> AUSWÄHLEN * VON Student;
+------+----------+------+------+
| s_id | s_name | Alter | c_id |
+------+----------+------+------+
| 1 | xiaoming | 13 | 1 |
| 2 | xiaohong | 41 | 4 |
| 3 | xiaoxia | 22 | 3 |
| 4 | xiaogang | 32 | 1 |
| 5 | xiaoli | 41 | 2 |
| 6 | wangwu | 13 | 2 |
| 7 | lisi | 22 | 3 |
| 8 | Zhangsan | 11 | 9 |
+------+----------+------+------+
8 Zeilen im Satz (0,00 Sek.)

mysql> SELECT * FROM Klasse;
+------+---------+-------+
| c_id | c_name | Anzahl |
+------+---------+-------+
| 1 | MATHE | 65 |
| 2 | CHINESISCH | 70 |
| 3 | DEUTSCH | 50 |
| 4 | GESCHICHTE | 30 |
| 5 | BIOLOGIE | 40 |
+------+---------+-------+
5 Zeilen im Satz (0,00 Sek.)

Voraussetzung für die Verknüpfung von Tabellen ist zunächst, dass in beiden Tabellen gleiche, vergleichbare Spalten vorhanden sind.

1. Innerer Join

mysql> SELECT * FROM student INNER JOIN class ON student.c_id = class.c_id;
+------+----------+------+------+------+---------+---------+-----------+
| s_id | s_name | Alter | c_id | c_id | c_name | Anzahl |
+------+----------+------+------+------+---------+---------+-----------+
| 1 | xiaoming | 13 | 1 | 1 | MATHEMATIK | 65 |
| 2 | xiaohong | 41 | 4 | 4 | GESCHICHTE | 30 |
| 3 | xiaoxia | 22 | 3 | 3 | DEUTSCH | 50 |
| 4 | xiaogang | 32 | 1 | 1 | MATHEMATIK | 65 |
| 5 | xiaoli | 41 | 2 | 2 | CHINESISCH | 70 |
| 6 | wangwu | 13 | 2 | 2 | CHINESISCH | 70 |
| 7 | lisi | 22 | 3 | 3 | DEUTSCH | 50 |
+------+----------+------+------+------+---------+---------+-----------+
7 Zeilen im Satz (0,00 Sek.)

Einfach ausgedrückt besteht ein Inner Join darin, alle Daten der Zeilen, die die Bedingungen erfüllen, in den beiden Tabellen zusammen anzuzeigen. Das heißt, wenn die Bedingungen nicht erfüllt sind, werden die Daten, die in Tabelle A, aber nicht in B (oder umgekehrt) zu finden sind, nicht angezeigt.

2. Äußerer Join

mysql> SELECT * FROM student LEFT JOIN class ON student.c_id = class.c_id;
+------+----------+------+------+------+---------+---------+-----------+
| s_id | s_name | Alter | c_id | c_id | c_name | Anzahl |
+------+----------+------+------+------+---------+---------+-----------+
| 1 | xiaoming | 13 | 1 | 1 | MATHEMATIK | 65 |
| 2 | xiaohong | 41 | 4 | 4 | GESCHICHTE | 30 |
| 3 | xiaoxia | 22 | 3 | 3 | DEUTSCH | 50 |
| 4 | xiaogang | 32 | 1 | 1 | MATHEMATIK | 65 |
| 5 | xiaoli | 41 | 2 | 2 | CHINESISCH | 70 |
| 6 | wangwu | 13 | 2 | 2 | CHINESISCH | 70 |
| 7 | lisi | 22 | 3 | 3 | DEUTSCH | 50 |
| 8 | zhangsan | 11 | 9 | NULL | NULL | NULL |
+------+----------+------+------+------+---------+---------+-----------+
8 Zeilen im Satz (0,00 Sek.)


mysql> SELECT * FROM student RIGHT JOIN class ON student.c_id = class.c_id;
+------+----------+------+------+------+---------+---------+-----------+
| s_id | s_name | Alter | c_id | c_id | c_name | Anzahl |
+------+----------+------+------+------+---------+---------+-----------+
| 1 | xiaoming | 13 | 1 | 1 | MATHEMATIK | 65 |
| 4 | xiaogang | 32 | 1 | 1 | MATHEMATIK | 65 |
| 5 | xiaoli | 41 | 2 | 2 | CHINESISCH | 70 |
| 6 | wangwu | 13 | 2 | 2 | CHINESISCH | 70 |
| 3 | xiaoxia | 22 | 3 | 3 | DEUTSCH | 50 |
| 7 | lisi | 22 | 3 | 3 | DEUTSCH | 50 |
| 2 | xiaohong | 41 | 4 | 4 | GESCHICHTE | 30 |
| NULL | NULL | NULL | NULL | 5 | BIOLOGIE | 40 |
+------+----------+------+------+------+---------+---------+-----------+
8 Zeilen im Satz (0,00 Sek.)

Oben sind zwei Fälle von äußeren Verknüpfungen dargestellt: Linksverknüpfung und Rechtsverknüpfung. Diese beiden sind fast identisch. Der einzige Unterschied besteht darin, dass die Haupttabelle des linken Join die Tabelle auf der linken Seite und die Haupttabelle des rechten Join die Tabelle auf der rechten Seite ist. Der Unterschied zwischen einem äußeren und einem inneren Join besteht darin, dass alle Zeilen der Haupttabelle angezeigt werden und die Daten in der Haupttabelle, die nicht in anderen Tabellen enthalten sind, durch NULL ersetzt werden.

Zusammenfassen

Damit ist dieser Artikel über verschiedene Möglichkeiten zum Verbinden von Tabellen in MySQL abgeschlossen. Weitere Informationen zum Verbinden von MySQL-Tabellen finden Sie in früheren Artikeln auf 123WORDPRESS.COM oder in den folgenden verwandten Artikeln. Ich hoffe, Sie werden 123WORDPRESS.COM auch in Zukunft unterstützen!

Das könnte Sie auch interessieren:
  • Grundlegendes Tutorial zu Multi-Table-Join-Abfragen in MySQL
  • MySQL-Löschfunktion für Mehrfachtabellenverbindungen
  • So erstellen Sie einen Index für eine Join-Tabelle in MySQL
  • MySQL-Tabelle LEFT JOIN left join und RIGHT JOIN right join Beispiel-Tutorial
  • Erläuterung des MySQL-Multitabellen-Join-Abfragebeispiels
  • Ein einfaches Tutorial zur Optimierung von Tabellenverknüpfungsabfragen in MySQL
  • mysql drei Tabellen verbunden, um eine Ansicht zu erstellen
  • Detaillierte Erklärung der MySQL-Datenbank - Abfrage mehrerer Tabellen - Inner Join, Outer Join, Unterabfrage, korrelierte Unterabfrage
  • Fortgeschrittenes Lernprogramm zur MySQL LEFT JOIN-Tabellenverbindung
  • Einführungstutorial zum MySQL-Multitabellen-Join

<<:  Detailliertes Tutorial zur Verwendung des Plugins tomcat8-maven-plugin in Maven

>>:  JavaScript zum Implementieren der Auswahl oder Stornierung von Kontrollkästchen

Artikel empfehlen

Vue implementiert die browserseitige Code-Scan-Funktion

Hintergrund Vor nicht allzu langer Zeit habe ich ...

React erhält den Eingabewert und übermittelt 2 Methodenbeispiele

Methode 1: Verwenden Sie das Zielereignisattribut...

Das WeChat-Applet implementiert das Scrollen von Text

In diesem Artikelbeispiel wird der spezifische Co...

Der Unterschied zwischen MySQL execute, executeUpdate und executeQuery

Die Unterschiede zwischen „execute“, „executeUpda...

Das Submit-Ereignis des Formulars reagiert nicht

1. Problembeschreibung <br />Wenn JS verwen...

Das WeChat-Applet implementiert das Schlangenspiel

In diesem Artikel wird der spezifische Code des W...

Syntax und Beispielanalyse der JavaScript-Array-Methode „reduce()“

Vorwort Die Methode „reduce()“ erhält eine Funkti...

Implementierung der DOM-Operation in React

Inhaltsverzeichnis Vorherige Wörter Anwendungssze...

Detaillierte Erklärung zur Verwendung von umask unter Linux

Ich habe vor Kurzem angefangen, Linux zu lernen. ...

HTML n Möglichkeiten zum Erreichen eines alternativen Farbcode-Beispielcodes

In diesem Artikel wird hauptsächlich der Beispiel...

HTML-Grundlagen - Einfaches Beispiel zum Festlegen des Hyperlink-Stils

*** Beispiel für das Festlegen des Stils eines Hy...