La colonne tutorielle suivante de thinkphp vous présentera les méthodes courantes de requête conjointe de plusieurs tables dans ThinkPHP. J'espère qu'elle sera utile aux amis dans le besoin !
Les requêtes associées (c'est-à-dire les requêtes conjointes multi-tables) dans ThinkPHP peuvent utiliser la méthode table() ou la méthode join. L'utilisation spécifique est comme indiqué dans l'exemple suivant :
. 1. Exemple de requête native :
$Model = new Model(); $sql = 'select a.id,a.title,b.content from think_test1 as a, think_test2 as b where a.id=b.id '.$map.' order by a.id '.$sort.' limit '.$p->firstRow.','.$p->listRows; $voList = $Model->query($sql);
2. Exemple de méthode Join() :
$user = new Model('user'); $list = $user->join('RIGHT JOIN user_profile ON user_stats.id = user_profile.typeid' );
Thinkphp utilise la méthode de requête de table de jointure
$user = M('user'); $b_user = M('b_user'); $c_user = M('c_user'); $list = $user->alias('user')->where('user.user_type=1') ->join('b_user as b on b.b_userid = user.user_id') ->join('c_user as c on c.c_userid = b.b_userid') ->order('b.user_time') ->select();
Le user_id de la table $user est égal au b_userid de la table $b_user
Le c_userid de la table $c_user est égal au b_userid de la table $b_user <🎜 ; >
3. Exemple de méthode Table() :
$list = $user->table('user_status stats, user_profile profile')->where('stats.id = profile.typeid')->field('stats.id as id, stats.display as display, profile.title as title,profile.content as content')->order('stats.id desc' )->select();
Recommandations associées :
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!