在聚合函数内引用聚合函数的别名有什么意义?

下面是一张 salary 工资表

图片说明


执行代码

SELECT department , SUM(gain) AS sgn FROM salary GROUP BY department HAVING COUNT(sgn) = 0;

查询出

图片说明


疑问:
COUNT(sgn) 怎么解释?为何在其等于0时,能够查询出结果?

count(sgn) = 0时,sum还没有得到数据,也就是sql语句开始进行第一位查询,查询人事部。所以当count(sgn)=0时。查询出人事部。 count(sgn)=1时查询出市场部,以此类推