• TP5查询/统计去除重复的方法及注意事项和用法(distinct,group与having)


    1、group(字段名)

    根据设置的分组的字段名去除重复;

    2、distinct(true)

    一般写在field()前,根据field定义的字段去除重复;

    区别:group('字段名')不能和聚合查询如:count();sum();等连用,而distinct(true)可以,但并没有什么卵用,聚合函数计算的结果并不是根据去除重复后的查询出的数据来计算。

    group('字段名')可配合having()函数一起使用,从分组的结果中筛选(通常是聚合条件)数据

    Db::table('think_user')
        ->field('username,max(score)')
        ->group('user_id')
        ->having('count(test_time)>3')
        ->select(); 

    例如group('字段名')和聚合查询连用

    输出结果,报错

    如果非得用group('字段名')统计可以这样写:先分组查询,再计算总数

    用法:

     输出结果:

    上面例子演示的是当只查询一个字段去除重复时,group和distinct(true)效果相同。

    注:当只查询一个字段时,用column()函数可以返回一个一维数组

    版权声明:TP5查询去除重复的方法及注意事项和用法(distinct,group与having) 来源于网络,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。原文链接:https://blog.csdn.net/qq_41912505/article/details/86511950

  • 相关阅读:
    下载ORACLE中BLOB内容到客户端
    VIEW_PK
    带下拉框的GridView的OnRowEditing
    HyperLinkField
    ArcEngine开发 退出系统报错
    【转载】Winform 中的控件透明设置要点
    【转载】大整数相乘
    c# oracle 分页
    view_fk
    ITopologicalOperator Intersect
  • 原文地址:https://www.cnblogs.com/wangyongx/p/14976365.html
Copyright © 2020-2023  润新知