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

 更新时间:2020年03月24日 23:32:35   投稿:shichen2014  
这篇文章主要介绍了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联表查询的方法

$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相关内容感兴趣的读者可查看本站专题:《ThinkPHP入门教程》、《thinkPHP模板操作技巧总结》、《ThinkPHP常用方法总结》、《smarty模板入门基础教程》及《PHP模板技术总结》。

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

相关文章

  • Laravel框架实现文件上传的方法分析

    Laravel框架实现文件上传的方法分析

    这篇文章主要介绍了Laravel框架实现文件上传的方法,结合实例形式分析了Laravel框架文件上传相关的配置设置、视图及控制器相关操作技巧,需要的朋友可以参考下
    2019-09-09
  • Laravel框架用户登陆身份验证实现方法详解

    Laravel框架用户登陆身份验证实现方法详解

    这篇文章主要介绍了Laravel框架用户登陆身份验证实现方法,结合实例形式分析了Laravel框架用户登陆验证的原理、实现方法与相关注意事项,需要的朋友可以参考下
    2017-09-09
  • PHP代码保护--Zend Guard的使用详解

    PHP代码保护--Zend Guard的使用详解

    本篇文章是对zend guard的使用进行了详细的分析介绍,需要的朋友参考下
    2013-06-06
  • 浅谈PHP正则中的捕获组与非捕获组

    浅谈PHP正则中的捕获组与非捕获组

    下面小编就为大家带来一篇浅谈PHP正则中的捕获组与非捕获组。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2016-07-07
  • Yii2框架数据库简单的增删改查语法小结

    Yii2框架数据库简单的增删改查语法小结

    这篇文章主要介绍了Yii2框架数据库简单的增删改查语法小结,非常不错,具有参考借鉴价值,需要的朋友可以参考下
    2016-08-08
  • Yii框架视图、视图布局、视图数据块操作示例

    Yii框架视图、视图布局、视图数据块操作示例

    这篇文章主要介绍了Yii框架视图、视图布局、视图数据块操作,结合实例形式分析了Yii框架相关的视图、布局、控制器及数据相关操作技巧,需要的朋友可以参考下
    2019-10-10
  • Laravel6.18.19如何优雅的切换发件账户

    Laravel6.18.19如何优雅的切换发件账户

    这篇文章主要给大家介绍了关于Laravel6.18.19如何优雅的切换发件账户的相关资料,文中通过示例代码介绍的非常详细,对大家学习或者使用Laravel6.18.19具有一定的参考学习价值,需要的朋友们下面来一起学习学习吧
    2020-06-06
  • Yii中特殊行为ActionFilter的使用方法示例

    Yii中特殊行为ActionFilter的使用方法示例

    这篇文章主要给大家介绍了关于Yii中特殊行为ActionFilter的使用方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-10-10
  • PHP开发微信支付的代码分享

    PHP开发微信支付的代码分享

    最近一直在研究微信,不研究不知道,一研究下一跳啊,微信真的可以做太多事情了,先来看下微信支付的开发心得吧,以后会慢慢补全其他方面的开发代码
    2014-05-05
  • php获取远程图片体积大小的实例

    php获取远程图片体积大小的实例

    有时候,我们需要知道远程图片的体积大小,那么PHP如何可以做到呢?
    2013-11-11

最新评论