打印表中给定列中重复出现的值的次数sql语句

monwx1rj  于 2021-07-29  发布在  Java
关注(0)|答案(1)|浏览(315)

好的,我们知道我们可以通过使用groupby和having关键字以及一个聚合函数来检查列是否有重复的值,比如 Count() .
如果我想做的是打印那些重复的值,不是打印一次,而是打印它们在表中出现的次数?
因此,如果列包含: 1,2,2,2,3,4,5,5,6,7,8,8,8. 我希望我的查询返回: 2,2,2,5,5,8,8,8. group by/distinct只显示2、5、8。我怎样才能得到我想要的?
谢谢您。

i7uaboj4

i7uaboj41#

您可以计算子查询中的窗口计数,然后使用它筛选结果集:

select val
from (select val, count(*) over(partition by val) cnt from mytable) t
where cnt > 1

相关问题