Re: SELECT duplicates in a table

From: vhikida(at)inreach(dot)com
To: "Kall, Bruce A(dot)" <kall(at)mayo(dot)edu>
Cc: pgsql-general(at)postgresql(dot)org
Subject: Re: SELECT duplicates in a table
Date: 2004-11-22 17:56:00
Message-ID: 9211.146.74.1.99.1101146160.squirrel@146.74.1.99
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

Try

SELECT *
FROM mytable
WHERE (identification_number,date_of_birth) IN
(SELECT identification_number
, date_of_birth
FROM mytable m2
GROUP BY identification_number,data_of_birth
HAVING COUNT(*) > 1
)

There are other ways of doing it, perhaps more efficient.

Vincent

> I've look for a solution to this, but have only been able to find
> solutions to delete duplicate entries in a table by deleting entries not
> returned by SELECT DISTINCT.
>
> What sql should I use to SELECT entries in a table that have two
> particular column values that match?
>
> For example, my_table has
> name, phone number, identification_number, zip code, date of birth, and
> city
>
> I want to SELECT rows from this table that have the same values in
> identification and date of birth (duplicates) so I can have the user
> look at them in order to figure out which one to delete.
>
> I tried something like:
>
> $db_sql = "SELECT * FROM my_table GROUP BY identification_number
> HAVING count(date_of_birth) > 1 ORDER BY name"
>
> but that doesn't seem to work.
>
> Thanks,
> Bruce
>
>
> ---------------------------(end of broadcast)---------------------------
> TIP 6: Have you searched our list archives?
>
> http://archives.postgresql.org
>

In response to

Responses

Browse pgsql-general by date

  From Date Subject
Next Message Kall, Bruce A. 2004-11-22 18:07:55 Re: SELECT duplicates in a table
Previous Message Kall, Bruce A. 2004-11-22 17:37:17 SELECT duplicates in a table