- 顺序问题:where子句必须放在group子句之前;而having子句必须在group子句之后
1.Where子句
2.having子句
- 字段问题:where子句只可以处理数据表中的数据;having只能处理在group by子句中出现的字段、select的列的字段或聚合函数处理过的列、外部查询中的字段。having根据前面查询出来的是什么就可以在后面接什么
1.having子句的字段必须出现在检索中(select的查询列、group by中的列、外查询中的列)或者是聚合函数处理后的列,可以是别名
2.where子句中的字段必须是数据表(物理表)中的列名,不能是别名或者聚合函数
- having通常是与group子句连用,用于进一步说明