Heim  >  Artikel  >  Backend-Entwicklung  >  Ausführliche Erläuterung der auf mehrere Tabellen bezogenen Abfrage in thinkphp

Ausführliche Erläuterung der auf mehrere Tabellen bezogenen Abfrage in thinkphp

小云云
小云云Original
2018-01-06 16:01:031987Durchsuche

In diesem Artikel werden hauptsächlich relevante Informationen zu detaillierten Beispielen für Abfragen mit mehreren Tabellen in thinkphp vorgestellt. Ich hoffe, dass dieser Artikel jedem helfen kann, diesen Teil des Inhalts zu verstehen und zu beherrschen allen helfen.

Erläuterung von Abfragebeispielen für mehrere Tabellen in thinkphp

Bei der Programmierung von Back-End-Verwaltungssystemen werden Frameworks im Allgemeinen zum schnellen Erstellen von Seiten verwendet Die Anwendung des thinkphp-Frameworks trennt tatsächlich das Front-End und das Back-End für die Verwaltung. Das Front-End-Benutzer-Login-Abfragesystem wird im Home-Ordner von thinkphp verwaltet und das Back-End-Verwaltungssystem wird im Home-Ordner von thinkphp Manage im Admin-Ordner abgelegt. Wenn Sie das Thinkphp-Framework verwenden, müssen Sie übrigens die MVC-Architektur verwenden. Die MVC-Architektur besteht aus einer Struktur aus Modell (Datenmodell), Ansicht (Ansicht) und Controller (Controller). . Steuerung Die Funktion des Controllers besteht darin, Ansichten und Controller zu verwalten. Weitere Informationen finden Sie in der Thinkphp-Dokumentation.

Worüber ich heute sprechen werde, ist die Korrelationsabfrageanwendung von Datenbanktabellen, die im Back-End-Managementsystem vorkommen.

Das erste, worüber ich sprechen möchte, ist die Anwendung von Abfrageanweisungen in thinkphp. Natürlich handelt es sich hierbei nicht um eine einfache Abfrage einer Datentabelle, sondern um eine verwandte Abfrage zwischen mehreren Tabellen Es gibt zwei Methoden für die Datenzuordnung: Join und Table.

1. Das erste, was eingeführt werden muss, ist die Tabellenmethode, um verwandte Abfragen zwischen mehreren Tabellen durchzuführen

Das erste M ist das M-Modell in thinkphp, die Funktion besteht darin, die Datentabelle in der Datenbank auszuwählen, die Tabelle wählt aus, welche Tabellen verknüpft werden sollen, wo die bedingte Zuordnung durchgeführt werden soll, die Funktion des Feldes ist tatsächlich eine Filterfunktion, die die gewünschten oder nützlichen Informationen ausgeben kann Nach der Korrelation der Tabellen ist das Ergebnis die gewünschte Datenstruktur.


public function orderList(){
   $User=M("t_order");
   /*两个表的关联查询得到等级值*/
   $userinfo = $User->table('t_order,t_commodity,t_user')->where('t_order.cname = t_commodity.cname and t_order.uname = t_user.uname ')->field('t_order_id,t_order.orderid,t_order.cname')->select();
   $this->assign("userInfo",$userinfo);
   $this->display("order-list");
}

2. Die Join-Methode führt verwandte Abfragen zwischen mehreren Tabellen durch

Hier Der Unterschied zwischen den Tabellenzuordnungen besteht darin, dass der Join die Tabellen verknüpft. Der Rest ist eigentlich derselbe. Wo ist die Zuordnungsbedingung und das Feld ist die gefilterte Information (nützliche Informationen für den nächsten Schritt)


public function getBanner(){
 $bannerid=1;
 $banner=M("banner_item");
 $result=$banner->join('image ON banner_item.img_id = image.id')->where("banner_item.banner_id=".$bannerid)->field("key_word,type,banner_id,url,from")->select();
 echo json_encode($result);
}

Verwandte Empfehlungen:

Detaillierte Erläuterung der Verwendung der YII2-Mehrtabellenzuordnung

Join in Yii2 , So verwenden Sie Join mit einer Korrelationsabfrage mit mehreren Tabellen

Codebeispiel für die Implementierung einer Korrelationsabfrage mit mehreren Tabellen in thinkphp

Das obige ist der detaillierte Inhalt vonAusführliche Erläuterung der auf mehrere Tabellen bezogenen Abfrage in thinkphp. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
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