MySQL多表联查之ThinkPHP中的实现
2018-09-19 02:56:06来源:博客园 阅读 ()
创建两个表如图:
sp_user表:
sp_dept表:
目的:通过sp_user的dept_id查询所属部门即sp_dept中的name。
原生sq方法一:select t1.*,t2.name as deptname from sp_user as t1,sp_dept as t2 where t1.dept_id = t2.id;
原生sq方法二:select t1.*,t2.name as deptname from sp_user as t1 left join sp_dept as t2 on t1.dept_id = t2.id;
结果相同:
对应ThinkPHP中,则也有两种方法table和join如下:
1 //多表联查(table) 2 public function test18() { 3 //实例化模型 4 $model = M(); 5 //查询 6 $result = $model->field('t1.*, t2.name as deptname')->table('sp_user as t1, sp_dept as t2')
->where('t1.dept_id = t2.id')->select(); 7 dump($result); 8 } 9 //多表联查(join) 10 public function test19() { 11 //实例化模型 12 $model = M('User'); 13 //查询 14 $result = $model->field('t1.*, t2.name as deptname')->alias('t1')
->join('left join sp_dept as t2 on t1.dept_id = t2.id')->select(); 15 dump($result); 16 }
测试结果相同:
综上:ThinkPHP进行多表联查可通过table方法和join方法分别实现,测试环境ThinkPHP3.2.3,表前缀sp_
标签:
版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有
上一篇:PHP ping
- php mysql PDO 查询操作的实例详解 2020-02-15
- thinkphp中的多表关联查询的实例详解 2020-02-07
- php安装扩展mysqli的实现步骤及报错解决办法 2020-01-16
- 查找mysql字段中固定字符串并替换的几个方法 2019-11-28
- 分享PHP+MySQL投票系统的设计和实现 2019-11-21
IDC资讯: 主机资讯 注册资讯 托管资讯 vps资讯 网站建设
网站运营: 建站经验 策划盈利 搜索优化 网站推广 免费资源
网络编程: Asp.Net编程 Asp编程 Php编程 Xml编程 Access Mssql Mysql 其它
服务器技术: Web服务器 Ftp服务器 Mail服务器 Dns服务器 安全防护
软件技巧: 其它软件 Word Excel Powerpoint Ghost Vista QQ空间 QQ FlashGet 迅雷
网页制作: FrontPages Dreamweaver Javascript css photoshop fireworks Flash