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重新实现PHP脚本引擎内置函数
Mar 06 PHP
深入PHP数据加密详解
Jun 18 PHP
Apache实现Web Server负载均衡详解(不考虑Session版)
Jul 05 PHP
PHP的基本常识小结
Jul 05 PHP
php递归方法实现无限分类实例代码
Feb 28 PHP
PHP会员找回密码功能的简单实现
Sep 05 PHP
浅谈php数组array_change_key_case() 函数和array_chunk()函数
Oct 22 PHP
PHP的自定义模板引擎
Mar 24 PHP
PHP实现的装箱算法示例
Jun 23 PHP
PHP PDOStatement::fetchObject讲解
Feb 01 PHP
Windows上php5.6操作mongodb数据库示例【配置、连接、获取实例】
Feb 13 PHP
PHP针对redis常用操作实例详解
Aug 17 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
PHP5.0对象模型探索之抽象方法和抽象类
2006/09/05 PHP
PHP加速 eAccelerator配置和使用指南
2009/06/05 PHP
php压缩HTML函数轻松实现压缩html/js/Css及注意事项
2013/01/27 PHP
php验证手机号码(支持归属地查询及编码为UTF8)
2013/02/01 PHP
ThinkPHP内置jsonRPC的缺陷分析
2014/12/18 PHP
PHP中的traits简单使用实例
2015/05/13 PHP
屏蔽PHP默认设置中的Notice警告的方法
2016/05/20 PHP
php判断手机浏览还是web浏览,并执行相应的动作简单实例
2016/07/28 PHP
PHP 中TP5 Request 请求对象的实例详解
2017/07/31 PHP
bootstrap改变按钮加载状态
2014/12/01 Javascript
jquery制作属于自己的select自定义样式
2015/11/23 Javascript
iscroll.js的上拉下拉刷新时无法回弹的解决方法
2016/02/18 Javascript
JS加载器如何动态加载外部js文件
2016/05/26 Javascript
javascript验证内容为数字以及长度为10的简单实例
2016/08/20 Javascript
详解基于webpack搭建react运行环境
2017/06/01 Javascript
详解vue-router和vue-cli以及组件之间的传值
2017/07/04 Javascript
js实现加载页面就自动触发超链接的示例
2017/08/31 Javascript
bootstrap 弹出框modal添加垂直方向滚轴效果
2018/07/09 Javascript
python 查找字符串是否存在实例详解
2017/01/20 Python
python实现生命游戏的示例代码(Game of Life)
2018/01/24 Python
django settings.py 配置文件及介绍
2019/07/15 Python
Python随机函数库random的使用方法详解
2019/08/21 Python
在spyder IPython console中,运行代码加入参数的实例
2020/04/20 Python
python中shell执行知识点
2020/05/06 Python
通俗讲解python 装饰器
2020/09/07 Python
萌新的HTML5 入门指南
2020/11/06 HTML / CSS
英国最受信任的在线眼镜商之一:Fashion Eyewear
2019/10/31 全球购物
物业电工岗位职责
2013/11/20 职场文书
业务主管岗位职责
2013/11/20 职场文书
工程部经理岗位职责
2013/12/08 职场文书
国庆节文艺活动方案
2014/02/03 职场文书
新闻编辑专业毕业自荐书范文
2014/02/05 职场文书
MySQL infobright的安装步骤
2021/04/07 MySQL
基于python制作简易版学生信息管理系统
2021/04/20 Python
JavaScript函数柯里化
2021/11/07 Javascript
Docker下安装Oracle19c
2022/04/13 Servers