thinkphp中的多表关联查询的实例详解


Posted in PHP onOctober 12, 2017

thinkphp中的多表关联查询的实例详解

 在进行后端管理系统的编程的时候一般会使用框架来进行页面的快速搭建,我最近使用比较多的就是thinkphp框架,thinkphp框架的应用其实就是把前端和后端进行分割管理,前端用户登录查询系统放在thinkphp中的home文件夹中进行管理,后端管理系统放在thinkphp中的admin文件夹中进行管理。对了,在使用thinkphp框架的时候是是要用到mvc架构的,mvc架构就是model(数据模型)、view(视图)、controller(控制器)的结构,这里界面是由视图来进行控制,控制器的作用就是管理视图和控制器,详细的结构可以查询thinkphp的文档进行学习。

        今天要说的就是在后端管理系统中遇到的数据库表的关联查询应用。

         首先要说的就是在thinkphp中的查询语句的应用,当然这里并不是简单的对一个数据表的查询工作,而是进行多表之间的关联查询,这里面进行数据的关联有两种方法join和table方法 。  

1、首先介绍的是table方法进行多表之间的关联查询

      最前面的M是thinkphp中的M模型,作用就是选择数据库中的数据表,table中选择的是要关联的哪些表,where是进行条件关联,field的作用其实就是一个过滤作用,可以把你想要的或者有用的信息输出出来,这样对表进行关联之后的结果就是剩下自己想要的数据结构了。

public function orderList(){
   $User=M("t_order");
   /*两个表的关联查询得到等级值*/
   $userinfo = $User->table('t_order,t_commodity,t_user')->where('t_order.cname = t_commodity.cname and t_order.uname = t_user.uname ')->field('t_order_id,t_order.orderid,t_order.cname')->select();
   $this->assign("userInfo",$userinfo);
   $this->display("order-list");
}

2、join方法进行多表之间的关联查询

这里面的表的关联的区别就是join使用了on来进行表的关联,剩下的部分其实就是一样,where中是关联的条件,field中是过滤的信息(对接下来有用的信息)

public function getBanner(){
 $bannerid=1;
 $banner=M("banner_item");
 $result=$banner->join('image ON banner_item.img_id = image.id')->where("banner_item.banner_id=".$bannerid)->field("key_word,type,banner_id,url,from")->select();
 echo json_encode($result);
}

如有疑问请留言或者到本站社区交流讨论,感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

PHP 相关文章推荐
小偷PHP+Html+缓存
Nov 25 PHP
Discuz 模板语句分析及知识技巧
Aug 21 PHP
PHP输出时间差函数代码
Jan 28 PHP
PHP实现将科学计数法转换为原始数字字符串的方法
Dec 16 PHP
php批量添加数据与批量更新数据的实现方法
Dec 16 PHP
php带抄送和密件抄送的邮件发送方法
Mar 20 PHP
PHP实现的简单分页类及用法示例
May 06 PHP
Yii框架中jquery表单验证插件用法示例
Oct 18 PHP
PHP实现登陆表单提交CSRF及验证码
Jan 24 PHP
php安全配置记录和常见错误梳理(总结)
Mar 28 PHP
PHP implode()函数用法讲解
Mar 08 PHP
Laravel框架实现的使用smtp发送邮件功能示例
Mar 12 PHP
laravel 5异常错误:FatalErrorException in Handler.php line 38的解决
Oct 12 #PHP
利用PHP实现开心消消乐的算法示例
Oct 12 #PHP
深入理解PHP中mt_rand()随机数的安全
Oct 12 #PHP
php表单习惯用的正则表达式
Oct 11 #PHP
彻底搞懂PHP 变量结构体
Oct 11 #PHP
利用php + Laravel如何实现部署自动化详解
Oct 11 #PHP
Laravel 5使用Laravel Excel实现Excel/CSV文件导入导出的功能详解
Oct 11 #PHP
You might like
Apache实现Web Server负载均衡详解(不考虑Session版)
2013/07/05 PHP
PHP中使用Imagick读取pdf并生成png缩略图实例
2015/01/21 PHP
php中文乱码问题的终极解决方案汇总
2017/08/01 PHP
jquery 取子节点及当前节点属性值
2014/07/25 Javascript
JavaScript定义变量和变量优先级问题探讨
2014/10/11 Javascript
html5+javascript实现简单上传的注意细节
2016/04/18 Javascript
基于JS如何实现类似QQ好友头像hover时显示资料卡的效果(推荐)
2016/06/09 Javascript
JavaScript基础之AJAX简单的小demo
2017/01/29 Javascript
详细AngularJs4的图片剪裁组件的实例
2017/07/12 Javascript
详解Angular2表单-模板驱动的表单(Template-Driven Forms)
2017/08/04 Javascript
JavaScript设计模式之代理模式简单实例教程
2018/07/03 Javascript
swiper在angularjs中使用循环轮播失效的解决方法
2018/09/27 Javascript
使用element-ui的el-menu导航选中后刷新页面保持当前选中状态
2019/07/19 Javascript
[41:20]2014 DOTA2华西杯精英邀请赛 5 24 NewBee VS DK
2014/05/26 DOTA
[04:31]2016国际邀请赛中国区预选赛妖精采访
2016/06/27 DOTA
flask框架使用orm连接数据库的方法示例
2018/07/16 Python
NumPy 数学函数及代数运算的实现代码
2018/07/18 Python
python 实现查找文件并输出满足某一条件的数据项方法
2019/06/12 Python
使用python搭建服务器并实现Android端与之通信的方法
2019/06/28 Python
使用CSS3的ruby-position固定注音位置的用法示例
2016/07/05 HTML / CSS
CSS3 实现图形下落动画效果
2020/11/13 HTML / CSS
日本网路线上商品代购服务:转送JAPAN
2016/08/05 全球购物
经典c++面试题六
2012/01/18 面试题
管理科学大学生求职信
2013/11/13 职场文书
大学生演讲稿范文
2014/01/11 职场文书
聊城大学毕业生自荐书
2014/02/01 职场文书
12月小学生校园广播稿
2014/02/04 职场文书
2014年学习雷锋活动总结
2014/03/01 职场文书
演讲稿的写法
2014/05/19 职场文书
团拜会策划方案
2014/06/07 职场文书
商场促销活动总结
2014/07/10 职场文书
尊老爱幼演讲稿
2014/09/04 职场文书
一般党员对照检查材料
2014/09/24 职场文书
预备党员考察意见范文
2015/06/01 职场文书
Html5生成验证码的示例代码
2021/05/10 Javascript
css height属性中的calc方法详解
2021/06/03 HTML / CSS