2020-05-02
阅读量:
1830
关于MySql中的group by 注意事项
定义:用于该字段的分组(通过group by 相当于对表的字段进行了分组的操作处理);
group by 使用注意点:
1.having只能用在group by之后,对分组后的结果进行筛选(即使用having的前提条件是分组)。
2.where肯定在group by 之前,即也在having之前。
3.where后的条件表达式里不允许使用聚合函数(count(),sum(),avg(),max(),min()),而having可以。
当一个查询语句同时出现了where,group by,having,order by的时候,执行顺序和编写顺序是:
- 执行where xx对全表数据做筛选,返回第1个结果集。
- 针对第1个结果集使用group by分组,返回第2个结果集。
- 针对第2个结果集中的每1组数据执行select xx,有几组就执行几次,返回第3个结果集。
- 针对第3个结集执行having xx进行筛选,返回第4个结果集。
- 针对第4个结果集排序。
- 当group by 后有2个字段时,当成一个整体的字段进行分组。
除聚合计算语句外,select 中的每个列都必须在 group by 中出现;
187.7828
5
2
关注作者
收藏
评论(0)
发表评论
暂无数据
推荐帖子
0条评论
1条评论
1条评论