select deptno,avg(sal)
from emp
group by deptno
having deptno=10
---------------------------------------
select dpetno,avg(sal)
from emp
where deptno=10
group by deptono
---------------------------------------
也就是说(从理论上讲),where是在查询前做条件限制,having是在查询后的结果集上做条件限制。
查询前做限制的话,返回的件数会少;而在查询后的结果集上做限制的话,之前的查询结果可能会很多,这样就会影响性能。
所以,一般是用where,having是在where不方便或者不能使用的情况下才使用。
本文详细解释了SQL查询中WHERE和HAVING子句的区别,包括它们的使用场景、性能影响以及如何在查询前和查询后做条件限制。通过实例分析,帮助读者更好地理解和应用这些概念。
652

被折叠的 条评论
为什么被折叠?



