Heim > Datenbank > MySQL-Tutorial > So verwenden Sie Tabellenverbindungen in MySQL und PHP

So verwenden Sie Tabellenverbindungen in MySQL und PHP

王林
Freigeben: 2023-05-29 14:13:13
nach vorne
1137 Leute haben es durchsucht

Tabellenverbindung

Verwenden Sie Verbindungsbedingungen, um mehrere Tabellen zuzuordnen (JOIN). Daten zwischen mehreren Tabellen können über die Tabellenverbindung abgerufen werden.

So verwenden Sie Tabellenverbindungen in MySQL und PHP

Tabellenverbindungssyntax:

SELECT Tabellenname 1. Spaltenname , Tabellenname 2. Spaltenname AUS Tabelle 1, Tabelle 2 WHERE-Bedingung

Mehrere Möglichkeiten, Tabellen zu verknüpfen:

Inner Join: Join oder Inner Join

Selbst-Join: Join innerhalb derselben Tabelle

Outer Join:

  • linker äußerer Join, linker Join

  • rechter äußerer Join, rechter Join

  • vollständiger äußerer Join, vollständiger Join

Daten (Tabelle 1):

So verwenden Sie Tabellenverbindungen in MySQL und PHP

Daten (Tabelle 2):

So verwenden Sie Tabellenverbindungen in MySQL und PHP

Inner Join

Inner Join dient dazu, alle Zeilen aus der Ergebnistabelle zu löschen, die nicht mit anderen verbundenen Tabellen übereinstimmen (Schnittpunkt)

Format:

SELECT A.c1, B.c2 FROM A JOIN B ON A .c3 = B.c3

Beispiel:

<?php

$conn = mysqli_connect("localhost", "root","admin","study");

if ($conn) {
    echo "数据库链接成功\n";
} else {
    echo mysqli_connect_error();
}

# SQL语句
$SQL = "SELECT table1.name, table1.age, table2.class
        FROM table1 JOIN table2
        ON table1.name = table2.name";

# 执行
$result = mysqli_query($conn, $SQL);

# 查看是否执行成功
if ($result) {
    echo "SQL 语句执行成功!\n";
}else {
    echo mysqli_error($conn);
}

# 调试输出
while ($line = mysqli_fetch_assoc($result)) {
    print_r($line);
}

# 关闭连接
mysqli_close($conn);

?>
Nach dem Login kopieren

Ausgabeergebnis:

Datenbankverknüpfung erfolgreich
SQL-Anweisung erfolgreich ausgeführt!
Array
(
[Name] => Yang Fugui
[ Alter] => 18
[Klasse] => Mathematikklasse
)
Array
(
[Name] => Yang Meili
[Alter] => 19
[Klasse] => Chinesischklasse
)
Array
(
[Name ] => Yang Jianguo
[Alter] => 20
[Klasse] =>Linker Join

enthält alle Zeilen der Tabelle (unabhängig davon, ob die rechte Tabelle vorhanden ist und entsprechende Zeilen enthält). ) und alle passenden Zeilen in der rechten Tabelle.

Format:

SELECT A.c1, B.c2 FROM A LEFT JOIN B ON A.c3 = B.c3

Beispiel:

rrree

Ausgabeergebnis:

Datenbankverknüpfung erfolgreich

SQL-Anweisung erfolgreich ausgeführt!

Array
(

[Name] => Yang Fugui
[Alter] => 18
[Klasse] => Mathematikklasse
)
Array
(
[ Name] => Yang Meili
[Alter] => 19
[Klasse] => Chinesische Klasse
)
Array
(
[Name] => Yang Jianguo
[Alter] => 20
[Klasse ] => Englischunterricht
)
Array
(
[Name] => Yang Tiezhu
[Alter] => 21
[Klasse] =>
)


Rechter Join

Enthält die richtige Tabelle Alle Zeilen (unabhängig davon, ob es übereinstimmende Zeilen in der linken Tabelle gibt) und alle übereinstimmenden Zeilen in der linken Tabelle

Format:

SELECT A.c1, B.c2 FROM A RIGHT JOIN B ON A.c3 = B .c3

Beispiel:

<?php

$conn = mysqli_connect("localhost", "root","admin","study");

if ($conn) {
    echo "数据库链接成功\n";
} else {
    echo mysqli_connect_error();
}

# SQL语句
$SQL = "SELECT table1.name, table1.age, table2.class
        FROM table1 LEFT JOIN table2
        ON table1.name = table2.name";

# 执行
$result = mysqli_query($conn, $SQL);

# 查看是否执行成功
if ($result) {
    echo "SQL 语句执行成功!\n";
}else {
    echo mysqli_error($conn);
}

# 调试输出
while ($line = mysqli_fetch_assoc($result)) {
    print_r($line);
}

# 关闭连接
mysqli_close($conn);

?>
Nach dem Login kopieren

Ausgabeergebnis:

Datenbankverknüpfung erfolgreich

SQL-Anweisung erfolgreich ausgeführt!

Array
(

[Name] => Yang Fugui
[Alter] => 18
[Klasse] => Mathematikunterricht
)
Array
(
[Name] => Yang Meili
[Alter] => 19
[Klasse] => Chinesischunterricht
)
Array
(
[Name] => ; Yang Jianguo
[Alter] => 20
[Klasse] => Englischunterricht
)
Array
(
[Name] =>
[Klasse] => Geschichtsunterricht
)


Vollständiger Join

Enthält alle Zeilen aus der linken und rechten Tabelle (unabhängig davon, ob in der anderen Tabelle übereinstimmende Zeilen vorhanden sind).

Format:

SELECT A.c1, B.c2 FROM A LEFT JOIN B ON A.c3 = B.c3

UNION

SELECT A.c1, B.c2 FROM A RIGHT JOIN B ON A.c3 = B.c3

Beispiel:

<?php

$conn = mysqli_connect("localhost", "root","admin","study");

if ($conn) {
    echo "数据库链接成功\n";
} else {
    echo mysqli_connect_error();
}

# SQL语句
$SQL = "SELECT table1.name, table1.age, table2.class
        FROM table1 RIGHT JOIN table2
        ON table1.name = table2.name";

# 执行
$result = mysqli_query($conn, $SQL);

# 查看是否执行成功
if ($result) {
    echo "SQL 语句执行成功!\n";
}else {
    echo mysqli_error($conn);
}

# 调试输出
while ($line = mysqli_fetch_assoc($result)) {
    print_r($line);
}

# 关闭连接
mysqli_close($conn);

?>
Nach dem Login kopieren

Ausgabeergebnis:

Datenbankverknüpfung erfolgreich

SQL-Anweisung erfolgreich ausgeführt!

Array

(
[Name] => Yang Fugui

[Alter] => 18
[Klasse] => Mathematikklasse
)
Array
(
[Name] => Yang Beautiful
[Alter] => 19
[Klasse] => Chinesischklasse
)
Array
(
[Name] => Yang Jianguo
[Alter] => 20
[Klasse] => Englischklasse
)
Array
(
[Name] => Yang Tiezhu
[Alter] => 21
[Klasse] =>
)
Array
(
[Name] =>
[Alter] =>
[ Klasse] => Geschichtsunterricht
)

Das obige ist der detaillierte Inhalt vonSo verwenden Sie Tabellenverbindungen in MySQL und PHP. 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