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 相关文章推荐
PHP4实际应用经验篇(8)
Oct 09 PHP
Php Ctemplate引擎开发相关内容
Mar 03 PHP
php对二维数组按指定键值key排序示例代码
Nov 26 PHP
Codeigniter注册登录代码示例
Jun 12 PHP
ThinkPHP中的关联模型注意点
Jun 16 PHP
php利用smtp类实现电子邮件发送
Oct 30 PHP
thinkPHP引入类的方法详解
Dec 08 PHP
PHP中Laravel 关联查询返回错误id的解决方法
Apr 01 PHP
PHP文字转图片功能原理与实现方法分析
Aug 31 PHP
PHP大文件切割上传并带进度条功能示例
Jul 01 PHP
Laravel如何实现适合Api的异常处理响应格式
Jun 14 PHP
PHP网页缓存技术优点及代码实例
Jul 29 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
Email+URL的判断和自动转换函数
2006/10/09 PHP
javascript引用对象的方法代码
2007/08/13 Javascript
dess中一个简单的多路委托的实现
2010/07/20 Javascript
jquery如何实现锚点链接之间的平滑滚动
2013/12/02 Javascript
javascript字符串替换及字符串分割示例代码
2013/12/12 Javascript
JS检测输入字符是否包含非法字符的示例代码
2014/02/11 Javascript
js如何调用qq互联api实现第三方登录
2014/03/28 Javascript
document.compatMode的CSS1compat使用介绍
2014/04/03 Javascript
浅谈window对象的scrollBy()方法
2015/07/15 Javascript
Jquery attr()方法 属性赋值和属性获取详解
2016/04/15 Javascript
jQuery利用sort对DOM元素进行排序操作
2016/11/07 Javascript
js中string和number类型互转换技巧(分享)
2016/11/28 Javascript
微信小程序 wx.uploadFile在安卓手机上面the same task is working问题解决
2016/12/14 Javascript
bootstrap日历插件datetimepicker使用方法
2016/12/14 Javascript
利用js判断手机是否安装某个app的多种方案
2017/02/13 Javascript
基于JS对象创建常用方式及原理分析
2017/06/28 Javascript
JS鼠标滚动分页效果示例
2017/07/05 Javascript
简单了解node npm cnpm的具体使用方法
2019/02/27 Javascript
产制造追溯系统之通过微信小程序实现移动端报表平台
2019/06/03 Javascript
解决layui的input独占一行的问题
2019/09/10 Javascript
详解阿里Node.js技术文档之process模块学习指南
2021/01/04 Javascript
python实现自动登录人人网并访问最近来访者实例
2014/09/26 Python
给Python初学者的一些编程技巧
2015/04/03 Python
python通过ssh-powershell监控windows的方法
2015/06/02 Python
Python实现将不规范的英文名字首字母大写
2016/11/15 Python
Python 基础教程之包和类的用法
2017/02/23 Python
python利用不到一百行代码实现一个小siri
2017/03/02 Python
Python正则表达式匹配日期与时间的方法
2019/07/07 Python
Superdry极度干燥美国官网:英国制造的服装品牌
2018/11/13 全球购物
Gerry Weber德国官网:优质女性时装,德国最大的时装公司之一
2019/11/02 全球购物
西安当代医院管理研究院笔试题
2015/12/11 面试题
难忘的一天教学反思
2014/04/30 职场文书
2015年清明节活动总结
2015/02/09 职场文书
党员干部廉政承诺书
2015/04/28 职场文书
巾帼建功标兵先进事迹材料
2016/02/29 职场文书
python之django路由和视图案例教程
2021/07/26 Python