sql >> Databasteknik >  >> RDS >> PostgreSQL

Hur man hittar dubbletter av poster i PostgreSQL

Grundidén kommer att vara att använda en kapslad fråga med räkningsaggregation:

select * from yourTable ou
where (select count(*) from yourTable inr
where inr.sid = ou.sid) > 1

Du kan justera where-satsen i den inre frågan för att begränsa sökningen.

Det finns en annan bra lösning för det som nämns i kommentarerna, (men inte alla läser dem):

select Column1, Column2, count(*)
from yourTable
group by Column1, Column2
HAVING count(*) > 1

Eller kortare:

SELECT (yourTable.*)::text, count(*)
FROM yourTable
GROUP BY yourTable.*
HAVING count(*) > 1


  1. En introduktion till Java Security API

  2. Hur identifierar man primärnyckeldupliceringen från en SQL Server 2008-felkod?

  3. Hur använder man en PostgreSQL-behållare med befintliga data?

  4. Databasdesign för flerspråkiga applikationer