Mysql分组后筛选
在select语句中,使用group by子句进行分组后,如果需要对分组后的数据进行筛选,可以使用having子句指定筛选条件。
having子句和where子句非常相似,都是对数据进行过滤,having子句支持where子句中所有的操作符和语法。
where和having的区别:
1.where 子句主要用于过滤数据行,而having子句主要用于过滤分组。
2.where子句不可以包含聚合函数,having子句中的条件可以包含聚合函数。
3.having子句是在数据分组后进行过滤,where子句会在数据分组前进行过滤,where子句排除的行不包含在分组中
having子句中的筛选字段必须是可以出现在分组结果中的字段。