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 相关文章推荐
PHP4与PHP3中一个不兼容问题的解决方法
Oct 09 PHP
PHP操作文件方法问答
Mar 16 PHP
PHP和XSS跨站攻击的防范
Apr 17 PHP
php session安全问题分析
Jun 24 PHP
php异常处理技术,顶级异常处理器
Jun 13 PHP
PHP写的求多项式导数的函数代码
Jul 04 PHP
php制作unicode解码工具(unicode编码转换器)代码分享
Dec 24 PHP
yii操作session实例简介
Jul 31 PHP
php简单分页类实现方法
Feb 26 PHP
PHP实现对数字分隔加千分号的方法
Mar 18 PHP
Laravel如何实现自动加载类
Oct 14 PHP
Laravel5.1 框架路由基础详解
Jan 04 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
php去除重复字的实现代码
2011/09/16 PHP
PHP几个实用自定义函数小结
2016/01/25 PHP
PHP常用设计模式之委托设计模式
2016/02/13 PHP
jquery提升性能最佳实践小结
2010/12/06 Javascript
jquery动态分页效果堪比时光网
2014/09/25 Javascript
jquery分割字符串的方法
2015/06/24 Javascript
在Docker快速部署Node.js应用的详细步骤
2016/09/02 Javascript
layui选项卡效果实现代码
2017/05/19 Javascript
jQuery简单判断值是否存在于数组中的方法示例
2018/04/17 jQuery
JS实现读取xml内容并输出到div中的方法示例
2018/04/19 Javascript
Vue 去除路径中的#号
2018/04/19 Javascript
js replace替换字符串同时替换多个方法
2018/11/27 Javascript
ES6的解构赋值实例详解
2019/05/06 Javascript
一文了解Vue中的nextTick
2019/05/06 Javascript
微信小程序日历弹窗选择器代码实例
2019/05/09 Javascript
快速解决Vue、element-ui的resetFields()方法重置表单无效的问题
2020/08/12 Javascript
Python自动化构建工具scons使用入门笔记
2015/03/10 Python
深入理解Python3中的http.client模块
2017/03/29 Python
解决python3中解压zip文件是文件名乱码的问题
2018/03/22 Python
python3实现163邮箱SMTP发送邮件
2018/05/22 Python
Python机器学习k-近邻算法(K Nearest Neighbor)实例详解
2018/06/25 Python
Python使用sort和class实现的多级排序功能示例
2018/08/15 Python
梅尔频率倒谱系数(mfcc)及Python实现
2019/06/18 Python
CSS3 Media Queries(响应式布局可以让你定制不同的分辨率和设备)
2013/06/06 HTML / CSS
基于 HTML5 Canvas实现 的交互式地铁线路图
2018/03/05 HTML / CSS
Mistine官方海外旗舰店:泰国国民彩妆品牌
2016/12/28 全球购物
总经理助理岗位职责
2013/11/08 职场文书
工厂门卫岗位职责范本
2014/04/04 职场文书
《猴子种果树》教学反思
2014/04/26 职场文书
质量保证书范本
2014/04/29 职场文书
团日活动总结怎么写
2014/06/25 职场文书
自主招生推荐信怎么写
2015/03/26 职场文书
2015年平安创建工作总结
2015/04/29 职场文书
2016年安康杯竞赛活动总结
2016/04/05 职场文书
JavaScript+HTML实现学生信息管理系统
2021/04/20 Javascript
java设计模式--建造者模式详解
2021/07/21 Java/Android