首页 新闻 会员 周边 捐助

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

0
悬赏园豆:100 [待解决问题]

下面是一张 salary 工资表:


执行代码:

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

查询得到:


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

长大的珊妮的主页 长大的珊妮 | 初学一级 | 园豆:4
提问于:2020-06-01 10:46
< >
分享
所有回答(3)
0

你是不是写错了?应该是count(gain)?

顾晓北 | 园豆:10898 (专家六级) | 2020-06-01 10:59

没有写错,我写的就是COUNT(sgn)

支持(0) 反对(0) 长大的珊妮 | 园豆:4 (初学一级) | 2020-06-01 11:00
0

通常 group by 列 HAVING COUNT (列) = 0 用来查询 该列的值 没有重复 的内容。
需要展示 salary 的原始数据才能分析。照查询结果看,你的 HAVING COUNT确实没有效果

geass.. | 园豆:1821 (小虾三级) | 2020-06-01 11:10
0

按正常逻辑 COUNT(sgn) = 0 这个应该没有效果的

Tom.汤 | 园豆:3060 (老鸟四级) | 2020-06-01 11:11

要么说呢

支持(0) 反对(0) 长大的珊妮 | 园豆:4 (初学一级) | 2020-06-01 11:11
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册