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 相关文章推荐
DOMXML函数笔记
Oct 09 PHP
php框架Phpbean说明
Jan 10 PHP
PHP Global定义全局变量使用说明
Aug 15 PHP
ThinkPHP模板引擎之导入资源文件方法详解
Jun 18 PHP
PHP中$this和$that指针使用实例
Jan 06 PHP
thinkphp命名空间用法实例详解
Dec 30 PHP
配置Nginx+PHP的正确思路与过程
May 10 PHP
深入理解php printf() 输出格式化的字符串
May 23 PHP
PHP生成静态HTML文档实现代码
Jun 23 PHP
Yii2 加载css、js 载静态资源的方法
Mar 10 PHP
PHP+Mysql+Ajax实现淘宝客服或阿里旺旺聊天功能(前台页面)
Jun 16 PHP
利用PHP内置SERVER开启web服务(本地开发使用)
Jan 22 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创建PDF中文文档
2006/10/09 PHP
php验证session无效的解决方法
2014/11/04 PHP
PHP 使用二进制保存用户状态的实例
2018/01/29 PHP
你可能不再需要JQUERY
2021/03/09 Javascript
Jquery弹出窗口插件 LeanModal的使用方法
2012/03/10 Javascript
判断一个对象是否为jquery对象的方法
2014/03/12 Javascript
Javascript图片上传前的本地预览实例
2014/06/16 Javascript
一个很有趣3D球状标签云兼容IE8
2014/08/22 Javascript
jQuery使用append在html元素后同时添加多项内容的方法
2015/03/26 Javascript
JavaScript中innerHTML,innerText,outerHTML的用法及区别
2015/09/01 Javascript
jQuery选择器基础入门教程
2016/05/10 Javascript
详解EasyUi控件中的Datagrid
2017/08/23 Javascript
Vue中组件之间数据的传递的示例代码
2017/09/08 Javascript
浅谈webpack-dev-server的配置和使用
2018/05/17 Javascript
mpvue实现微信小程序快递单号查询代码
2020/04/03 Javascript
Pycharm学习教程(4) Python解释器的相关配置
2017/05/03 Python
python用fsolve、leastsq对非线性方程组求解
2018/12/15 Python
在Pycharm中修改文件默认打开方式的方法
2019/01/17 Python
python反编译学习之字节码详解
2019/05/19 Python
python bluetooth蓝牙信息获取蓝牙设备类型的方法
2019/11/29 Python
python入门之基础语法学习笔记
2020/02/08 Python
Python自动巡检H3C交换机实现过程解析
2020/08/14 Python
Python实现加密的RAR文件解压的方法(密码已知)
2020/09/11 Python
利用CSS3实现动态的二级三级菜单效果实例源码
2017/01/04 HTML / CSS
HTML5 Canvas中绘制矩形实例
2015/01/01 HTML / CSS
通过HTML5 Canvas API绘制弧线和圆形的教程
2016/03/14 HTML / CSS
canvas实现高阶贝塞尔曲线(N阶贝塞尔曲线生成器)
2018/01/10 HTML / CSS
奥地利顶级内衣丝袜品牌英国站:Wolford英国
2016/08/29 全球购物
EMU Australia澳大利亚官网:澳大利亚本土雪地靴品牌
2019/07/24 全球购物
党员自我评价分享
2013/12/13 职场文书
《小动物过冬》教学反思
2014/04/17 职场文书
优秀教研组申报材料
2014/12/26 职场文书
硕士学位论文评语
2014/12/31 职场文书
检讨书范文1000字
2015/01/28 职场文书
党员转正大会主持词
2015/07/02 职场文书
mybatis 获取无数据的字段不显示的问题
2021/07/15 Java/Android