where和having区别 where叙述 1.where子句实现分组之前过滤数据 2.where子句中不能包含聚合函数 having叙述 1.having子句实现分组后过滤数据 2.having子句作用是筛选满足条件的组,就是分组之后过滤数据,having子句的位置在group by子句之后,它常包含聚合函数,having子句后要么是聚合函数要么是分组列 group by子句的with rollup选项 1.对分组的数据进行汇总计算,需要放在group by子句之后