聚合函数(count(),sum()....)不允许出现在where子句中,但是可以出现在select后面和having后面
where可以与group by连用,但是效果和having是不同的。where要求必须在group by前面。其含义是先过滤再分组。而having必须在group by后面(事实上,如果group by在select子句中不存在,那么having也没有存在的必要),是指分组后的数据组间再筛选。
如果在select子句中利用了分组聚集group by,那么select子句中出现过的除聚合函数之外的其他属性都必须加入到group by后面的属性中
网友评论