group by&having&where
select count(*) as '总数' from student where sex='男' group by sid having age>20
现在不管该失去了是否正确,就是让你明确 group by&having&where三者可以一起使用
下面要讨论一下三者的执行顺序:
1.执行where查找符合条件的数据
2.使用group by分组
3.用having去掉不符合的组
从上面可以看出having限制的是组,
where不能使用聚合函数,而having可以,比如having avg(age)>20