public function index()
{
//获取内容列表信息
$res = db('article')->alias('a')
->join('category b', 'b.id=a.cid')
->join('pics c','c.aid=a.id','LEFT')
->order('a.istop desc,a.addtime Desc,a.addtime Desc')
->field('a.*,b.name,count(c.pic) as pic')
->group('a.id')
->paginate(4);
$this->assign('list', $res);
return view('article_list');
}
alias('当前数据表的别名'),用于设置当前数据表的别名,便于使用其他的连贯操作
join('表名 别名',关联条件,'关联类型'),用于根据两个或多个表中的列之间的关系,从这些表中查询数据,关联类型可以为空默认为INNER,不区分大小写
关联类型有
1、INNER JOIN: 等同于 JOIN(默认的JOIN类型),如果表中有至少一个匹配,则返回行
2、LEFT JOIN: 即使右表中没有匹配,也从左表返回所有的行
3、RIGHT JOIN: 即使左表中没有匹配,也从右表返回所有的行
4、FULL JOIN: 只要其中一个表中存在匹配,就返回行
group()通常用于结合合计函数,根据一个或多个列对结果集进行分组,group方法只有一个参数,并且只能使用字符串
field()中内容表示查找a表的全部字段和b表的name字段,count()统计c表的图片数量并且给别名为pic(模板渲染时用{$vo.pic}),group()以a表id为分组

thinkPHP5.0联表查询和统计文章的图片(栏目文章)数量的更多相关文章

  1. yii2.0 联表查询数据库报错:undefined index order_id

    1.在查询时加了->select();如下,要加上order_id,即关联的字段(比如:order_id)比如要在select中,否则会报错:undefined index order_id / ...

  2. Linux mysql 联表查询

    在rhce考试题中,第21.22题为数据库查询题 题目: 在system1上创建一个Maria DB数据库,名为Contacts,要求: 数据库应该包含来自数据库users.mdb的内容,数据库只能被 ...

  3. Spring Hibernate JPA 联表查询 复杂查询(转)

    今天刷网,才发现: 1)如果想用hibernate注解,是不是一定会用到jpa的? 是.如果hibernate认为jpa的注解够用,就直接用.否则会弄一个自己的出来作为补充. 2)jpa和hibern ...

  4. Spring Hibernate JPA 联表查询 复杂查询

    今天刷网,才发现: 1)如果想用hibernate注解,是不是一定会用到jpa的? 是.如果hibernate认为jpa的注解够用,就直接用.否则会弄一个自己的出来作为补充. 2)jpa和hibern ...

  5. FreeSql (十七)联表查询

    FreeSql在查询数据下足了功能,链式查询语法.多表查询.表达式函数支持得非常到位. IFreeSql fsql = new FreeSql.FreeSqlBuilder() .UseConnect ...

  6. MySQL中的联表查询与子查询

    0.准备数据 1.内连接:INNER JOIN 2.左连接:LEFT JOIN 3.右连接:RIGHT JOIN 4.USING子句 扩展知识点: 0.表别名的使用: 1.group by的用法 2. ...

  7. .NET 6 跨服务器联表查询

    一.大家是否有这个需求 1.跨品种查询 :比如 MYSQL和一个SQLSERVER进行联表查询 ,或者SQLITE和MYSQL进行联表查询 2.跨服务器查询 : A服务器和B服务器查询 如果想同时支持 ...

  8. [慢查优化]联表查询注意谁是驱动表 & 你搞不清楚谁join谁更好时请放手让mysql自行判定

    写在前面的话: 不要求每个人一定理解 联表查询(join/left join/inner join等)时的mysql运算过程: 不要求每个人一定知道线上(现在或未来)哪张表数据量大,哪张表数据量小: ...

  9. 【转】[慢查优化]联表查询注意谁是驱动表 & 你搞不清楚谁join谁更好时请放手让mysql自行判定

    转自:http://zhengyun-ustc.iteye.com/blog/1942797 写在前面的话: 不要求每个人一定理解 联表查询(join/left join/inner join等)时的 ...

随机推荐

  1. php学习笔记-定义数组和引用数组元素

    上图包含两种定义数组的方法,一种是通过数组索引来创建的,一种是通过array()函数来创建的.

  2. R语言输出pdf时,中文乱码处理

    本文转载自:https://blog.csdn.net/hongweigg/article/details/47907555 1.使用基础包,使用函数pdf()输出 在使用pdf()函数时,要输出中文 ...

  3. Entity Framework Tutorial Basics(14):Choose development approach

    Choose development approach with Entity Framework: We have seen Code-first, Model-first and Database ...

  4. backstop无法访问

    解决方案:重新build代码,重新启动虚拟机.再等一会儿,就OK了.

  5. Spring MVC 简介

  6. 关于UI Automation框架

    微软提供的UI Automation框架给开发windows平台的自动化测试带来了很大的便利,这里就总结一下相关的代码. 首先,直接使用UI Automation框架,完成一个NotePad的abou ...

  7. [转]Passing Managed Structures With Strings To Unmanaged Code Part 3

    1. Introduction. 1.1 In part 1 of this series of blogs we studied how to pass a managed structure (w ...

  8. .Net Core Api 使用版本控制

    1,安装Microsoft.AspNetCore.Mvc.Versioning NET Core Mvc中,微软官方提供了一个可用的Api版本控制库Microsoft.AspNetCore.Mvc.V ...

  9. 在ubuntu 14.04 编译android 2.3.1 错误解决办法

    首先必须降低gcc版本: sudo apt-get install gcc-4.4sudo apt-get install g++-4.4sudo rm -rf /usr/bin/gcc /usr/b ...

  10. wffmpeg64.dll调用 尝试读取或写入受保护的内存。这通常指示其他内存已损坏。

    求解中.....