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 代码优化的42条建议 推荐
Sep 25 PHP
Smarty的配置与高级缓存技术分享
Jun 05 PHP
php+ajax做仿百度搜索下拉自动提示框(有实例)
Aug 21 PHP
解析php session_set_save_handler 函数的用法(mysql)
Jun 29 PHP
php实现在线生成条形码示例分享(条形码生成器)
Dec 30 PHP
php中time()与$_SERVER[REQUEST_TIME]用法区别
Nov 19 PHP
ThinkPHP中session函数详解
Sep 14 PHP
PHPStrom 新建FTP项目以及在线操作教程
Oct 16 PHP
PHP redis实现超迷你全文检索
Mar 04 PHP
php简单生成一组与多组随机字符串的方法
May 09 PHP
PHP实现时间比较和时间差计算的方法示例
Jul 24 PHP
php格式文件打开的四种方法
Feb 24 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 高手之路(二)
2006/10/09 PHP
基于curl数据采集之单页面并行采集函数get_htmls的使用
2013/04/28 PHP
使用php记录用户通过搜索引擎进网站的关键词
2014/02/13 PHP
PHP实现对数组分页处理实例详解
2017/02/07 PHP
Laravel Eloquent ORM 多条件查询的例子
2019/10/10 PHP
JavaScript 数组运用实现代码
2010/04/13 Javascript
JavaScript 笔记二 Array和Date对象方法
2010/05/22 Javascript
基于jQuery试卷自动排版系统
2010/07/18 Javascript
jquery动态添加删除一行数据示例
2014/06/12 Javascript
jQuery对象的length属性用法实例
2014/12/27 Javascript
jQuery的context属性用法实例
2014/12/27 Javascript
JavaScript制作简单的日历效果
2016/03/10 Javascript
探寻JavaScript中this指针指向
2016/04/23 Javascript
使用JS代码实现点击按钮下载文件
2016/11/12 Javascript
js实现文字无缝向上滚动
2017/02/16 Javascript
jQuery简单实现MD5加密的方法
2017/03/03 Javascript
Angular2.0/4.0 使用Echarts图表的示例代码
2017/12/07 Javascript
jQuery实现动画、消失、显现、渐出、渐入效果示例
2018/09/06 jQuery
pycharm 使用心得(二)设置字体大小
2014/06/05 Python
Python模拟登录验证码(代码简单)
2016/02/06 Python
python僵尸进程产生的原因
2017/07/21 Python
详解Python如何生成词云的方法
2018/06/01 Python
判断python字典中key是否存在的两种方法
2018/08/10 Python
python 顺时针打印矩阵的超简洁代码
2018/11/14 Python
利用Python小工具实现3秒钟将视频转换为音频
2019/10/29 Python
在Python中等距取出一个数组其中n个数的实现方式
2019/11/27 Python
django 连接数据库出现1045错误的解决方式
2020/05/14 Python
html5设计原理(推荐收藏)
2014/05/17 HTML / CSS
html5简单示例_动力节点Java学院整理
2017/07/07 HTML / CSS
飞利浦比利时官方网站:Philips比利时
2016/08/24 全球购物
Stührling手表官方网站:男女高品质时尚手表的领先零售商
2021/01/07 全球购物
Fanatics官网:运动服装、球衣、运动装备
2020/10/12 全球购物
大学生个人自我鉴定
2013/12/03 职场文书
金砖之国观后感
2015/06/11 职场文书
2016年小学生清明节广播稿
2015/12/17 职场文书
六年级语文教学反思
2016/03/03 职场文书