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


Posted in PHP onMarch 24, 2020

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联表查询的方法

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

希望本文所述对大家基于ThinkPHP框架的PHP程序设计有所帮助。

PHP 相关文章推荐
phpfans留言版用到的数据操作类和分页类
Jan 04 PHP
黑夜路人出的几道php笔试题
Aug 04 PHP
php max_execution_time执行时间问题
Jul 17 PHP
PHP 中检查或过滤IP地址的实现代码
Nov 27 PHP
如何取得中文字符串中出现次数最多的子串
Aug 08 PHP
php增删改查示例自己写的demo
Sep 04 PHP
PHP 如何获取二维数组中某个key的集合
Jun 03 PHP
php在linux下检测mysql同步状态的方法
Jan 15 PHP
支持中文的PHP按字符串长度分割成数组代码
May 17 PHP
PHP概率计算函数汇总
Sep 13 PHP
再谈PHP中单双引号的区别详解
Jun 12 PHP
PHP filter_var() 函数, 验证判断EMAIL,URL等
Mar 09 PHP
ThinkPHP2.0读取MSSQL提示Incorrect syntax near the keyword 'AS'的解决方法
Jun 25 #PHP
ThinkPHP查询中的魔术方法简述
Jun 25 #PHP
Thinkphp实现MySQL读写分离操作示例
Jun 25 #PHP
Zend Framework页面缓存实例
Jun 25 #PHP
非常好用的Zend Framework分页类
Jun 25 #PHP
PHP生成等比缩略图类和自定义函数分享
Jun 25 #PHP
PHP使用DOMDocument类生成HTML实例(包含常见标签元素)
Jun 25 #PHP
You might like
JAVA/JSP学习系列之六
2006/10/09 PHP
php 文件上传代码(限制jpg文件)
2010/01/05 PHP
Zend Framework实现Zend_View集成Smarty模板系统的方法
2016/03/05 PHP
PHP编写登录验证码功能 附调用方法
2016/05/19 PHP
Yii框架表单提交验证功能分析
2017/01/07 PHP
php获取linux命令结果的实例
2017/03/13 PHP
php面试中关于面向对象的相关问题
2019/02/13 PHP
php中array_fill函数的实例用法
2021/03/02 PHP
二叉树先序遍历的非递归算法具体实现
2014/01/09 Javascript
Jquery中国地图热点效果-鼠标经过弹出提示层信息的简单实例
2014/02/12 Javascript
JS实现部分HTML固定页面顶部随屏滚动效果
2015/12/24 Javascript
详解js的事件处理函数和动态创建html标记方法
2016/12/16 Javascript
JS跳转手机站url的若干注意事项
2017/10/18 Javascript
VS Code转换大小写、修改选中文字或代码颜色的方法
2017/12/15 Javascript
浅谈Vue数据绑定的原理
2018/01/08 Javascript
Vue2.0实现组件数据的双向绑定问题
2018/03/06 Javascript
vue iView 上传组件之手动上传功能
2018/03/16 Javascript
react高阶组件添加和删除props
2019/04/26 Javascript
vue3.0 搭建项目总结(详细步骤)
2019/05/20 Javascript
对vue中的事件穿透与禁止穿透实例详解
2019/10/28 Javascript
python使用matplotlib绘制折线图教程
2017/02/08 Python
python读取一个目录下所有txt里面的内容方法
2018/06/23 Python
Python异常的检测和处理方法
2018/10/26 Python
对Python模块导入时全局变量__all__的作用详解
2019/01/11 Python
自学python的建议和周期预算
2019/01/30 Python
python 调用钉钉机器人的方法
2019/02/20 Python
法国设计制造的扫帚和刷子:Andrée Jardin
2018/12/06 全球购物
方正Java笔试题
2014/07/03 面试题
最新创业融资计划书
2014/01/19 职场文书
爱我中华演讲稿
2014/05/20 职场文书
乔布斯斯坦福大学演讲稿
2014/05/23 职场文书
新闻传播专业求职信
2014/07/22 职场文书
坚守艰苦奋斗精神坚决反对享乐主义整改措施
2014/09/17 职场文书
节约用电倡议书
2015/04/28 职场文书
上帝也疯狂观后感
2015/06/09 职场文书
pytorch 运行一段时间后出现GPU OOM的问题
2021/06/02 Python