kejiayuan0806

2018-10-22   阅读量: 770

数据分析师 Mysql

MySQL中WHERE与HAVING的区别

扫码加入数据分析学习群

WHERE 子句作用于表和视图,HAVING 子句作用于组。

两者显著的区别是WHERE子句条件查询的作用域是针对数据表进行操作,而HAVING条件查询则是对查询结果进行操作。

WHERE在分组和聚集计算之前筛选行,而HAVING 在分组和聚集之后筛选分组的行。因此WHERE子句不能包含聚集函数,相反HAVING 子句总是包含聚集函数。(严格说来,也可以写不使用聚集的 HAVING 子句,但这种情况下同样的条件使用WHERE子句速度更快,因为我们避免了为那些不满足WHERE条件的行进行分组和聚集计算)

当真实数据表中没有此数据,这些数据是通过一些函数生成的,就需要使用HAVING子句进行筛选。

添加CDA认证专家【维克多阿涛】,微信号:【cdashijiazhuang】,提供数据分析指导及CDA考试秘籍。已助千人通过CDA数字化人才认证。欢迎交流,共同成长!
57.9135 1 2 关注作者 收藏

评论(0)


暂无数据

推荐课程