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.
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.
SELECT FROM INNER JOIN [ ON子句]
: 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)
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)
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!