如何在查询中应用具有count(distinct)和group by的WHERE条件?

时间:2017-03-21 08:40:54

标签: oracle group-by

我有这个查询

SELECT COUNT(DISTINCT COL1) AS Counter,COL1 FROM TABLE_NAME IG group by COL1

它计算列中存在的不同值。 所以,如果表格就像

COL1

AA
AA
AA
BB
BB
CC

结果将是 - ,基于上述查询

Counter   COL1
3         AA
2         BB
1         CC

我想查看计数器值大于1的所有记录,即结果必须如下所示

Counter   COL1
    3         AA
    2         BB

如何在上述查询中应用此WHERE条件?

提前致谢...

2 个答案:

答案 0 :(得分:2)

您正在寻找HAVING

SELECT COUNT(DISTINCT COL1) AS Counter,COL1 
FROM TABLE_NAME IG 
GROUP BY COL1
HAVING COUNT(DISTINCT COL1) > 1

答案 1 :(得分:1)

您实际需要的是一个不同的查询,SELECT COUNT(*) AS Counter , COL1 FROM TABLE_NAME GROUP BY COL1 HAVING COUNT(*) > 1

{{1}}