关于ThinkPHP多表联合查询的常用方法

下面由thinkphp教程栏目给大家介绍thinkphp多表联合查询的常用方法,希望对需要的朋友有所帮助!

ThinkPHP中关联查询(即多表联合查询)可以使用 table() 方法或和join方法,具体使用如下例所示:

1、原生查询示例:

$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、join()方法示例:

$user = new Model('user');$list = $user->join('RIGHT JOIN user_profile ON user_stats.id = user_profile.typeid' );

Thinkphp使用join联表查询的方法

立即学习“PHP免费学习笔记(深入)”;

蓝心千询 蓝心千询

蓝心千询是vivo推出的一个多功能AI智能助手

蓝心千询 34 查看详情 蓝心千询

$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();

$user 表的 user_id 等于$b_user表的b_userid;

$c_user表的 c_userid 等于$b_user表的b_userid;

3、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();

相关推荐:最新的10个thinkphp视频教程

以上就是关于ThinkPHP多表联合查询的常用方法的详细内容,更多请关注创想鸟其它相关文章!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 chuangxiangniao@163.com 举报,一经查实,本站将立刻删除。
发布者:程序猿,转转请注明出处:https://www.chuangxiangniao.com/p/347338.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2025年11月5日 20:56:23
下一篇 2025年11月5日 20:57:16

相关推荐

发表回复

登录后才能评论
关注微信