PHP ist eine gängige serverseitige Programmiersprache, die häufig in der Webentwicklung verwendet wird. Für die Interaktion mit der Datenbank bietet die MySQLi-Erweiterung von PHP leistungsstarke Funktionen, mit denen Datenbankdaten einfach abgefragt, hinzugefügt, geändert und gelöscht werden können. In diesem Artikel wird erläutert, wie Sie die Informationen zweier Tabellen über PHP abfragen.
In einer MySQL-Datenbank müssen manchmal Daten aus zwei oder mehr Tabellen abgerufen werden. Beispielsweise müssen Sie in einem einfachen Auftragsverwaltungssystem möglicherweise Informationen aus der Auftragstabelle und der Kundentabelle abrufen, um Auftrags- und Kundendetails anzuzeigen. An diesem Punkt müssen Sie die beiden Tabellen für die Abfrage verbinden.
Angenommen, wir haben zwei Tabellen, eine zum Speichern von Kundeninformationen und eine zum Speichern von Bestellinformationen. Die Kundentabelle enthält die Felder Kunden-ID, Kundenname, Adresse, Stadt und Postleitzahl. Die Bestelltabelle enthält die Felder Bestell-ID, Kunden-ID, Bestelldatum und Gesamtsumme. Unser Ziel ist es, Bestell- und Kundeninformationen aus diesen beiden Tabellen abzurufen.
Wir können das Schlüsselwort INNER JOIN verwenden, um die beiden Tabellen zu verbinden, sodass beim Abrufen von Daten die Daten der beiden Tabellen gleichzeitig abgerufen werden können. Das Schlüsselwort INNER JOIN gibt Zeilen zurück, die in den beiden Tabellen mit demselben Wert übereinstimmen. Dies kann durch den folgenden Code erreicht werden:
SELECT customers.customer_id, customers.customer_name, orders.order_id, orders.order_date FROM customers INNER JOIN orders ON customers.customer_id = orders.customer_id;
Diese Abfrageanweisung gibt alle Zeilen mit derselben Kunden-ID in der Kundentabelle und der Bestelltabelle zurück Das Set enthält die vier Felder Kunden-ID und Kundenname, Bestell-ID und Bestelldatum.
Das Schlüsselwort LEFT JOIN gibt alle Zeilen in der linken Tabelle (d. h. der ersten Tabelle) sowie die übereinstimmenden Zeilen in der rechten Tabelle (d. h. der zweiten Tabelle) zurück. Wenn es keine Übereinstimmung gibt, wird es mit NULL gefüllt. Wenn wir beispielsweise auch Kunden anzeigen möchten, die keine Bestellung aufgegeben haben, können wir dies durch den folgenden Code erreichen:
SELECT customers.customer_id, customers.customer_name, orders.order_id, orders.order_date FROM customers LEFT JOIN orders ON customers.customer_id = orders.customer_id;
Diese Abfrageanweisung gibt alle Zeilen in der Kundentabelle zurück, sowie Zeilen mit derselben Kunden-ID in der Bestelltabelle. Wenn ein Kunde keine Bestellung aufgegeben hat, werden in den Abfrageergebnissen NULL-Werte angezeigt.
Das Schlüsselwort RIGHT JOIN ist das Gegenteil von LEFT JOIN. Es gibt alle Zeilen in der rechten Tabelle sowie übereinstimmende Zeilen in der linken Tabelle zurück. Wenn wir beispielsweise alle Kunden anzeigen möchten, die eine Bestellung aufgegeben haben, können wir dies durch den folgenden Code erreichen:
SELECT customers.customer_id, customers.customer_name, orders.order_id, orders.order_date FROM customers RIGHT JOIN orders ON customers.customer_id = orders.customer_id;
Diese Abfrageanweisung gibt alle Zeilen in der Tabelle „Bestellungen“ sowie Zeilen mit derselben Kunden-ID in zurück der Kundentisch. Wenn ein Kunde keine Bestellung aufgegeben hat, werden in den Abfrageergebnissen NULL-Werte angezeigt.
Zusammenfassung
Um die Informationen von zwei Tabellen über PHP abzufragen, können Sie die Schlüsselwörter INNER JOIN, LEFT JOIN und RIGHT JOIN verwenden, um die beiden Tabellen zu verbinden. Durch die Verknüpfung zweier Tabellen können wir problemlos Daten aus mehreren Tabellen abrufen und sie in einem einzigen Ergebnissatz zusammenführen. Beim Schreiben von Abfrageanweisungen sollte besonderes Augenmerk auf die Zuordnungsbedingungen zwischen Tabellen gelegt werden, um sicherzustellen, dass die Abfrageergebnisse korrekt sind.
Das obige ist der detaillierte Inhalt vonSo fragen Sie Informationen aus zwei Tabellen über PHP ab. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!