postgresql 在带有 ID 的列中查找重复项

Saw*_*ode 2 sql postgresql duplicates

例如,我有一个表,上面写着“名称”,里面有重复的记录:

Id    |  Firstname
--------------------
1     |  John
2     |  John
3     |  Marc
4     |  Jammie
5     |  John
6     |  Marc
Run Code Online (Sandbox Code Playgroud)

如何获取重复记录并使用其接受的主键 ID 显示它们?

Pரத*_*ீப் 5

使用Count()Over()窗口聚合函数

Select * from
(
select Id, Firstname, count(1)over(partition by Firstname) as Cnt
from yourtable
)a
Where Cnt > 1
Run Code Online (Sandbox Code Playgroud)