sql – …其中count(col)> 1
发布时间:2020-12-12 08:40:01 所属栏目:MsSql教程 来源:网络整理
导读:我有一张这样的桌子 +-----+-----+-------+| id | fk | value |+-----+-----+-------+| 0 | 1 | peter || 1 | 1 | josh || 3 | 2 | marc || ... | ... | ... | 我现在想得到所有具有多个值的条目. 预期结果将是: +-----+-------+| fk | count |+-----+------
我有一张这样的桌子
+-----+-----+-------+ | id | fk | value | +-----+-----+-------+ | 0 | 1 | peter | | 1 | 1 | josh | | 3 | 2 | marc | | ... | ... | ... | 我现在想得到所有具有多个值的条目. +-----+-------+ | fk | count | +-----+-------+ | 1 | 2 | | ... | ... | 我试图这样实现: select fk,count(value) from table where count(value) > 1; 但甲骨文不喜欢. 所以我试过这个 select * from ( select fk,count(value) as cnt from table ) where cnt > 1; …没有成功. 有任何想法吗? 解决方法使用having子句来比较聚合.此外,您需要根据您要聚合的内容进行分组,以使查询正常工作.以下是一个开始,但是由于你缺少一个group by子句,它仍然不会奏效.你究竟想算什么? select fk,count(value) from table group by fk having count(value) > 1; (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |