Heim >Backend-Entwicklung >PHP-Problem >Verwenden Sie PHP-Code, um die verwandte Abfrageanzeige zweier Tabellen zu implementieren
In vielen Anwendungen müssen Daten aus mehreren Datenbanktabellen abgerufen werden, um die erforderlichen Informationen zu erhalten. In diesem Fall kann eine Join-Abfrage zwischen zwei Tabellen als sehr leistungsfähiges Tool zum Abfragen der erforderlichen Daten verwendet werden. In diesem Artikel stellen wir vor, wie Sie PHP-Code verwenden, um die verwandte Abfrageanzeige zweier Tabellen zu implementieren.
Zuerst müssen wir ein Paar zusammengehöriger Datenbanktabellen erstellen. Wir simulieren das Szenario einer einfachen E-Commerce-Website. Die erste Tabelle ist die Tabelle products
, die alle zum Verkauf stehenden Produkte enthält. Die zweite Tabelle ist die Tabelle orders
, die Details zu bestehenden Bestellungen enthält. Die Zuordnung zwischen den beiden Tabellen ist die Zuordnung zwischen dem Feld products.id
und dem Feld orders.product_id
. products
表,它包含所有可供销售的产品。第二张表是 orders
表,它包含已存在订单的详细信息。两张表之间的关联是 products.id
字段和 orders.product_id
字段之间的关联。
在 products
表中,我们需要添加以下几个字段:
CREATE TABLE products ( id INT PRIMARY KEY AUTO_INCREMENT, name VARCHAR(255) NOT NULL, price DECIMAL(10, 2) NOT NULL );
在 orders
表中,我们需要添加以下几个字段:
CREATE TABLE orders ( id INT PRIMARY KEY AUTO_INCREMENT, product_id INT NOT NULL, customer_name VARCHAR(255) NOT NULL, quantity INT NOT NULL, total_price DECIMAL(10, 2) NOT NULL, order_date DATE NOT NULL, FOREIGN KEY (product_id) REFERENCES products(id) );
现在,在我们的数据库中有两张相关联的表。接下来是如何使用 PHP 代码来查询这些数据并将它们显示在网页上的过程。
首先,我们需要连接到数据库。使用以下代码连接到您的数据库:
// 使用 mysqli 连接到数据库 $servername = "localhost"; $username = "username"; $password = "password"; $dbname = "database_name"; $conn = new mysqli($servername, $username, $password, $dbname); // 检查连接是否成功 if ($conn->connect_error) { die("连接失败: " . $conn->connect_error); }
现在我们已经成功连接到数据库,接下来是关键部分:查询两张表并将它们结合在一起显示出来。使用以下代码来查询两张表并将它们结合在一起显示:
$sql = "SELECT products.name, products.price, orders.customer_name, orders.quantity, orders.total_price, orders.order_date FROM products INNER JOIN orders ON products.id = orders.product_id"; $result = $conn->query($sql); if ($result->num_rows > 0) { // 输出数据 while($row = $result->fetch_assoc()) { echo "产品名称: " . $row["name"] . "<br>"; echo "价格: " . $row["price"] . "<br>"; echo "客户姓名: " . $row["customer_name"] . "<br>"; echo "数量: " . $row["quantity"] . "<br>"; echo "总价: " . $row["total_price"] . "<br>"; echo "订单日期: " . $row["order_date"] . "<br><br>"; } } else { echo "没有数据!"; }
在上面的代码中,我们使用了 SELECT
语句和 INNER JOIN
来结合两张表。使用这个查询,我们可以从 products
表和 orders
表中检索数据,并根据它们之间的关联将它们结合在一起。我们使用 mysqli_fetch_assoc()
Produkte
müssen wir die folgenden Felder hinzufügen: rrreee
In der TabelleBestellungen
müssen wir die folgenden Felder hinzufügen: 🎜rrreee🎜Jetzt In unserer Datenbank gibt es zwei verwandte Tabellen. Als Nächstes werden diese Daten mithilfe von PHP-Code abgefragt und auf einer Webseite angezeigt. 🎜🎜Zuerst müssen wir eine Verbindung zur Datenbank herstellen. Verwenden Sie den folgenden Code, um eine Verbindung zu Ihrer Datenbank herzustellen: 🎜rrreee🎜 Nachdem wir nun erfolgreich eine Verbindung zur Datenbank hergestellt haben, kommt hier der entscheidende Teil: die Abfrage der beiden Tabellen und deren Kombination, um sie anzuzeigen. Verwenden Sie den folgenden Code, um zwei Tabellen abzufragen und sie zur Anzeige zu kombinieren: 🎜rrreee🎜Im obigen Code haben wir die Anweisung SELECT
und INNER JOIN
verwendet, um die beiden Tabellen zu kombinieren Machen Sie einen Tisch. Mit dieser Abfrage können wir Daten aus der Tabelle products
und der Tabelle orders
abrufen und sie basierend auf der Verknüpfung zwischen ihnen zusammenführen. Wir verwenden die Funktion mysqli_fetch_assoc()
, um die aus der Datenbank abgerufenen Daten zu durchlaufen und die Ergebnisse auf der Webseite auszugeben. 🎜🎜Jetzt haben wir die Korrelationsabfrage zwischen zwei Tabellen mithilfe von PHP-Code erfolgreich implementiert und die Ergebnisse auf der Webseite angezeigt. 🎜Das obige ist der detaillierte Inhalt vonVerwenden Sie PHP-Code, um die verwandte Abfrageanzeige zweier Tabellen zu implementieren. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!