• 企业400电话
  • 微网小程序
  • AI电话机器人
  • 电商代运营
  • 全 部 栏 目

    企业400电话 网络优化推广 AI电话机器人 呼叫中心 网站建设 商标✡知产 微网小程序 电商运营 彩铃•短信 增值拓展业务
    分组查询GROUP BY的使用与SQL执行顺序的讲解

    在SQL中使用GROUP BY来对SELECT的结果进行数据分组,在具体使用GROUP BY之前需要知道一些重要的规定。

    过滤分组

    对分组过于采用HAVING子句。HAVING子句支持所有WHERE的操作。HAVING与WHERE的区别在于WHERE是过滤行的,而HAVING是用来过滤分组。

    另一种理解WHERE与HAVING的区别的方法是,WHERE在分组之前过滤,而HAVING在分组之后以每组为单位过滤。

    分组与排序

    一般在使用GROUP BY子句时,也应该使用ORDER BY子句。这是保证数据正确排序的唯一方法。

    SQL SELECT语句的执行顺序:

    举个例子吧

    select 考生姓名, max(总成绩) as max总成绩
    from tb_Grade
    where 考生姓名 is not null
    group by 考生姓名
    having max(总成绩) > 600
    order by max总成绩

    在上面的示例中 SQL 语句的执行顺序如下:

    注:如果使用了连接join和on,则会在where执行之前先执行on,然后执行join,接着才去执行where。

    附:

    MySQL中的聚集函数:

    注:avg()忽略值为null的行,count(*)时统计所有行,count(列)时忽略为null的行

    总结

    以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,谢谢大家对脚本之家的支持。如果你想了解更多相关内容请查看下面相关链接

    您可能感兴趣的文章:
    • 详解SQL中Group By的使用教程
    • Laravel 实现Eloquent模型分组查询并返回每个分组的数量 groupBy()
    • Django ORM 聚合查询和分组查询实现详解
    • MySQL分组查询Group By实现原理详解
    • 详解MySQL中的分组查询与连接查询语句
    • sql 分组查询问题
    • Oracle中分组查询group by用法规则详解
    上一篇:数据库SQL SELECT查询的工作原理
    下一篇:浅谈mysql 系统用户最大文件打开数限制
  • 相关文章
  • 

    © 2016-2020 巨人网络通讯 版权所有

    《增值电信业务经营许可证》 苏ICP备15040257号-8

    分组查询GROUP BY的使用与SQL执行顺序的讲解 分组,查询,GROUP,的,使用,