Re: Delete duplicates

Поиск
Список
Период
Сортировка
От Franco Bruno Borghesi
Тема Re: Delete duplicates
Дата
Msg-id 2976.200.59.66.253.1056316636.squirrel@webmail.akyasociados.com.ar
обсуждение исходный текст
Ответ на Delete duplicates  ("Rudi Starcevic" <rudi@oasis.net.au>)
Список pgsql-sql
try this

DELETE FROM aap WHERE  id NOT IN (  SELECT max(id)  FROM aap  GROUP BY keyword
);

>
>
> Hi,
>
> I have a table with duplicates and trouble with my SQL.
> I'd like to keep a single record and remove older duplicates.
> For example below of the 6 recods I'd like to keep records
> 4 and 6.
>
> TABLE: aap
> id |     keyword
> ----+-----------------
>  1 | LEAGUE PANTHERS
>  2 | LEAGUE PANTHERS
>  3 | LEAGUE PANTHERS
>  4 | LEAGUE PANTHERS
>  5 | LEAGUE BRONCOS
>  6 | LEAGUE BRONCOS
>
> Here is my SQL so far, it will select records 1 to 5 instead
> of 1,2,3 and 5 only.
>
> Any help greatly appreciated. I think I need a Group By somewhere in
> there.
>
> select a1.id
> from aap a1
> where id < ( SELECT max(id) FROM aap AS a2 )
> AND EXISTS
> (
> SELECT *
> FROM aap AS a2
> WHERE a1.keyword = a2.keyword
> )
>
> Regards
> Rudi.
>
> ---------------------------(end of
> broadcast)--------------------------- TIP 1: subscribe and unsubscribe
> commands go to majordomo@postgresql.org





В списке pgsql-sql по дате отправления:

Предыдущее
От: Janning Vygen
Дата:
Сообщение: Re: Informing end-user of check constraint rules
Следующее
От: Tomasz Myrta
Дата:
Сообщение: virtual table