Maison Java javaDidacticiel Comment implémenter une requête conjointe multi-tables MySQL dans ThinkPHP

Comment implémenter une requête conjointe multi-tables MySQL dans ThinkPHP

Sep 12, 2018 pm 04:33 PM
thinkphp

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')].

Comment implémenter une requête conjointe multi-tables MySQL dans ThinkPHP

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 :

1

select t1.*,t2.name as deptname from sp_user as t1,sp_dept as t2 where t1.dept_id = t2.id;

Copier après la connexion

Méthode sq native deux :

1

select t1.*,t2.name as deptname from sp_user as t1 left join sp_dept as t2 on t1.dept_id = t2.id;

Copier après la connexion

Le résultat est le même :

correspond à ThinkPHP, il existe également deux méthodes de table et de jointure comme suit :

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

//多表联查(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);

}

Copier après la connexion

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!

Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn

Article chaud

Musée de deux points: Guide de localisation de Bungle Wasteland
4 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
Combien de temps faut-il pour battre Split Fiction?
3 Il y a quelques semaines By DDD
Repo: Comment relancer ses coéquipiers
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island Adventure: Comment obtenir des graines géantes
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌

Article chaud

Musée de deux points: Guide de localisation de Bungle Wasteland
4 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
Combien de temps faut-il pour battre Split Fiction?
3 Il y a quelques semaines By DDD
Repo: Comment relancer ses coéquipiers
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island Adventure: Comment obtenir des graines géantes
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌

Tags d'article chaud

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Comment exécuter le projet thinkphp Comment exécuter le projet thinkphp Apr 09, 2024 pm 05:33 PM

Comment exécuter le projet thinkphp

Il existe plusieurs versions de thinkphp Il existe plusieurs versions de thinkphp Apr 09, 2024 pm 06:09 PM

Il existe plusieurs versions de thinkphp

Comment exécuter thinkphp Comment exécuter thinkphp Apr 09, 2024 pm 05:39 PM

Comment exécuter thinkphp

Comment installer thinkphp Comment installer thinkphp Apr 09, 2024 pm 05:42 PM

Comment installer thinkphp

Lequel est le meilleur, Laravel ou thinkphp ? Lequel est le meilleur, Laravel ou thinkphp ? Apr 09, 2024 pm 03:18 PM

Lequel est le meilleur, Laravel ou thinkphp ?

Suggestions de développement : Comment utiliser le framework ThinkPHP pour implémenter des tâches asynchrones Suggestions de développement : Comment utiliser le framework ThinkPHP pour implémenter des tâches asynchrones Nov 22, 2023 pm 12:01 PM

Suggestions de développement : Comment utiliser le framework ThinkPHP pour implémenter des tâches asynchrones

Cryptage et déchiffrement des données ThinkPHP6 : protection de la sécurité des données sensibles Cryptage et déchiffrement des données ThinkPHP6 : protection de la sécurité des données sensibles Aug 25, 2023 pm 10:52 PM

Cryptage et déchiffrement des données ThinkPHP6 : protection de la sécurité des données sensibles

Quelles sont les performances de thinkphp ? Quelles sont les performances de thinkphp ? Apr 09, 2024 pm 05:24 PM

Quelles sont les performances de thinkphp ?

See all articles