Heim > Datenbank > MySQL-Tutorial > Was ist die Methode der Inner-Join-Abfrage in MySQL?

Was ist die Methode der Inner-Join-Abfrage in MySQL?

WBOY
Freigeben: 2023-06-02 08:52:32
nach vorne
1168 Leute haben es durchsucht

Innere Verbindung wird auch Verbindung genannt und ist die früheste Art der Verbindung. Ein innerer Join, auch normaler Join oder natürlicher Join genannt, löscht alle Zeilen aus der Ergebnistabelle, die nicht mit Zeilen in anderen verknüpften Tabellen übereinstimmen, sodass beim inneren Join möglicherweise Informationen verloren gehen.

Was ist die Methode der Inner-Join-Abfrage in MySQL?

Verwenden Sie das Schlüsselwort INNER JOIN in der MySQL-FROM-Klausel, um die beiden Tabellen zu verbinden, und verwenden Sie die ON-Klausel, um die Verbindungsbedingungen festzulegen. Syntaktisch können INNER JOIN und CROSS JOIN ohne Bedingungen vertauscht werden.

Das Syntaxformat lautet wie folgt

SELECT 
FROM  INNER JOIN  [ ON子句]
Nach dem Login kopieren

Die Syntaxbeschreibung lautet wie folgt

: Der abzurufende Spaltenname.

: Die Tabellennamen der beiden Tabellen für die innere Verbindung.

Nach der FROM-Klausel können Sie das INNER-Schlüsselwort weglassen und das JOIN-Schlüsselwort direkt verwenden, da Inner Joins die Standardtabellenverbindungsmethode des Systems sind. Nach der Verwendung von Inner Joins können die Bedingungen für die Verknüpfung von Tabellen über die ON-Klausel in der FROM-Klausel festgelegt werden.

INNER JOIN oder JOIN können kontinuierlich zwischen mehreren Tabellen in der FROM-Klausel verwendet werden, sodass innere Verknüpfungen mehrerer Tabellen gleichzeitig realisiert werden können.

Sowohl die Tabelle tb_students_info als auch die Tabelle tb_departments enthalten das Feld dept_id desselben Datentyps, und zwischen den beiden Tabellen wird eine Inner-Join-Abfrage verwendet.

Die Eingabe-SQL-Anweisung und das Ausführungsergebnis lauten wie folgt

mysql> SELECT id,name,age,dept_name
   -> FROM tb_students_info,tb_departments
   -> WHERE tb_students_info.dept_id=tb_departments.dept_id;
+----+--------+------+-----------+
| id | name   | age  | dept_name |
+----+--------+------+-----------+
|  1 | Dany   |   25 | Computer  |
|  2 | Green  |   23 | Chinese   |
|  3 | Henry  |   23 | Math      |
|  4 | Jane   |   22 | Computer  |
|  5 | Jim    |   24 | Computer  |
|  6 | John   |   21 | Math      |
|  7 | Lily   |   22 | Computer  |
|  8 | Susan  |   23 | Economy   |
|  9 | Thomas |   22 | Chinese   |
| 10 | Tom    |   23 | Economy   |
+----+--------+------+-----------+
10 rows in set (0.00 sec)
Nach dem Login kopieren

Der größte Unterschied zwischen der SELECT-Anweisung und der vorherigen Einführung besteht darin: Die nach SELECT angegebenen Spalten gehören zu zwei In der Tabelle tb_students_info befinden sich unterschiedliche Tabellen, IDs, Namen und Alter, und in der Tabelle tb_departments befindet sich dept_name. Die FROM-Klausel listet die beiden Tabellen tb_students_info und tb_departments auf. Die WHERE-Klausel wird hier als Filterbedingung verwendet und gibt an, dass die Bedingungen für die Join-Abfrage nur dann erfüllt sind, wenn die Feldwerte dept_id in den beiden Tabellen gleich sind.

Sie können den zurückgegebenen Ergebnissen entnehmen, dass es sich bei den angezeigten Datensätzen um neue Datensätze handelt, die aus unterschiedlichen Spaltenwerten in den beiden Tabellen bestehen.

Tipp: Da die Tabelle tb_students_info und die Tabelle tb_departments das gleiche Feld dept_id haben, muss der Tabellenname beim Vergleich vollständig qualifiziert sein (im Format „Tabellenname.Spaltenname“) Nur dept_id, MySQL weiß nicht, auf welche es sich bezieht, und gibt eine Fehlermeldung zurück.

Verwenden Sie zwischen der Tabelle tb_students_info und der Tabelle tb_departments die INNER JOIN-Syntax, um eine Inner-Join-Abfrage durchzuführen. Die Eingabe-SQL-Anweisung und die Ausführungsergebnisse lauten wie folgt.

mysql> SELECT id,name,age,dept_name
   -> FROM tb_students_info INNER JOIN tb_departments
   -> WHERE tb_students_info.dept_id=tb_departments.dept_id;
+----+--------+------+-----------+
| id | name   | age  | dept_name |
+----+--------+------+-----------+
|  1 | Dany   |   25 | Computer  |
|  2 | Green  |   23 | Chinese   |
|  3 | Henry  |   23 | Math      |
|  4 | Jane   |   22 | Computer  |
|  5 | Jim    |   24 | Computer  |
|  6 | John   |   21 | Math      |
|  7 | Lily   |   22 | Computer  |
|  8 | Susan  |   23 | Economy   |
|  9 | Thomas |   22 | Chinese   |
| 10 | Tom    |   23 | Economy   |
+----+--------+------+-----------+
10 rows in set (0.00 sec)
Nach dem Login kopieren

INNER JOIN wird verwendet, um die Beziehung zwischen zwei Tabellen in der Abfrageanweisung anzugeben. Bei Verwendung dieser Syntax werden die Verbindungsbedingungen mithilfe der ON-Klausel anstelle von WHERE ON angegeben und die nach WHERE angegebenen Bedingungen sind dieselben.

Das obige ist der detaillierte Inhalt vonWas ist die Methode der Inner-Join-Abfrage in MySQL?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:yisu.com
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage