Comment implémenter une requête conjointe multi-table MySQL dans ThinkPHP : instanciez d'abord le modèle ; puis utilisez la méthode table() ou la méthode join() pour interroger, par exemple : [table('sp_user as t1, sp_dept comme t2')].
Le contenu de cet article explique comment implémenter une requête conjointe multi-table MySQL (image et texte) dans ThinkPHP, qui a une certaine valeur de référence dans Friends. besoin de pouvoir s'y référer, j'espère qu'il vous sera utile.
Tutoriels vidéo associés recommandés : "Tutoriel mysql", "Tutoriel PHP"
Créez deux tableaux comme indiqué dans la figure :
Table sp_user :
Table sp_dept :
Objectif : Interroger le nom du département qui appartient à sp_dept via le dept_id de sp_user.
Méthode sq native 1 :
select t1.*,t2.name as deptname from sp_user as t1,sp_dept as t2 where t1.dept_id = t2.id;
Méthode sq native deux :
select t1.*,t2.name as deptname from sp_user as t1 left join sp_dept as t2 on t1.dept_id = t2.id;
Le résultat est le même :
correspond à ThinkPHP, il existe également deux méthodes de table et de jointure comme suit :
//多表联查(table) public function test18() { //实例化模型 $model = M(); //查询 $result =$model->field('t1.*, t2.name as deptname')->table('sp_user as t1, sp_dept as t2') ->where('t1.dept_id = t2.id')->select(); dump($result); } //多表联查(join) public function test19() { //实例化模型 $model = M('User'); //查询 $result = $model->field('t1.*, t2.name as deptname')->alias('t1') ->join('left join sp_dept as t2 on t1.dept_id = t2.id')->select(); dump($result); }
Les résultats des tests sont les mêmes :
Pour résumer : ThinkPHP peut effectuer une requête conjointe multi-table via la méthode de table et la méthode de jointure respectivement. L'environnement de test est ThinkPHP3.2.3, préfixe de table sp_
. Recommandations associées :
Comment associer une requête entre 2 tables (thinkphp)
Exemple de requête associée en ThinkPHP, Exemple d'association en ThinkPHP
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!