热线电话:13121318867

登录
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的时候,执行顺序和编写顺序是: 

  1. 执行where xx对全表数据做筛选,返回第1个结果集。
  2. 针对第1个结果集使用group by分组,返回第2个结果集。
  3. 针对第2个结果集中的每1组数据执行select xx,有几组就执行几次,返回第3个结果集。
  4. 针对第3个结集执行having xx进行筛选,返回第4个结果集。
  5. 针对第4个结果集排序。
  6. 当group by 后有2个字段时,当成一个整体的字段进行分组。

除聚合计算语句外,select 中的每个列都必须在 group by 中出现;

187.7828
2
关注作者
收藏
评论(0)

发表评论

暂无数据
推荐帖子