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

yipeiwu_com7年前PHP代码库

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 5.3 下载时 VC9、VC6、Thread Safe、Non Thread Safe的区别分析

一共给了四个版本,VC9 x86 Non Thread Safe、VC9 x86 Thread Safe、VC6 x86 Non Thread Safe、VC6 x86 Thread S...

php实现数字补零的方法总结

在php中有两个函数——至少有两个是否有其他的我还不知道,能够实现数字补零,str_pad(),sprintf()详细如下 str_pad 顾名思义这个函数是针对字符串来说的这个可以对...

PHP入门之常量简介和系统常量

PHP常量默认为大小写敏感。传统上常量标识符总是大写的。 PHP常量名和其它任何 PHP 标签遵循同样的命名规则。合法的常量名以字母或下划线开始,后面跟着任何字母,数字或下划线。用正则表...

MacOS 安装 PHP的图片裁剪扩展Tclip

Tclip 用于图片裁剪,有以下特点: 能进行人脸识别。图片中有人脸,将自动视为人脸区域为重要区域,将不会被裁剪掉。 自动识别其它重要区域。如果图片中未识别出人脸,则会根据特征分布计算出...

php正则表达式基本知识与应用详解【经典教程】

本文实例讲述了php正则表达式基本知识与应用。分享给大家供大家参考,具体如下: 概述 正则表达式是一种描述字符串结果的语法规则,是一个特定的格式化模式,可以匹配、替换、截取匹配的字符串。...