SQL语句中的WHERE、聚合函数(SUM、MIN、MAX、AVG、COUNT)、HAVING

在查询过程中聚合函数(sum,min,max,avg,count)的执行优先级别高于having子句,而where子句在查询过程中执行优先级别高于于聚合函数(sum,min,max,avg,count)。
在一个查询语句中这三者都有的情况下,执行的步骤为:1.先执行where子句 2.然后对执行完where子句的查询结果执行聚合函数(sum,min,max,avg,count) 3.再对执行完聚合函数的查询结果执行having子句。
因为having的执行优先级别低于聚合函数(sum,min,max,avg,count),而where子句的执行优先级别高于于聚合函数(sum,min,max,avg,count),所以当对分组数据再次判断时,只能用having,不能用where。having后面跟的是聚合函数(sum,min,max,avg,count),而where后面不能跟聚合函数(sum,min,max,avg,count)。
1.WHERE 子句用来筛选 FROM 子句中指定的操作所产生的行。
2.GROUP BY 子句用来分组 WHERE 子句的输出。
3.HAVING 子句用来从分组的结果中筛选行。

本文地址:https://blog.csdn.net/weixin_43741493/article/details/107151551

(0)
上一篇 2022年3月21日
下一篇 2022年3月21日

相关推荐