[pgsql-jp: 29395] Re: 重複レコードの削除
Tatsuo Ishii
t-ishii @ sra.co.jp
2003年 3月 12日 (水) 22:38:41 JST
石井です.
> 小松です。SQLな話題を一項。
いいですね.
# なごみますね:-)
> 重複なしでアイテムを取り出すというのはよくある話で、
> select distinct name from items ;
> となりますが、逆に重複したアイテムだけのリストを
> 取り出すにはどうするのがいいんでしょうか?(問1)
まあ,いろいろあると思うので,これはほかのかたにおまかせして...
> さらには、これらの重複レコードを削除(1件のみ残して削除)する
> ことを考えてみると、aggregationが使えなくなるので、これまた
> どうしたものかと悩んでしまっています。(問2)
> どなたかスマートな方法教えてください。
同案多数でしょうが,こんなんで如何でしょう.
delete from items where itemno in (
select itemno from items except
select min(itemno) from items
group by name
);
なお,itemnoはユニークであるという前提です.
--
Tatsuo Ishii
pgsql-jp メーリングリストの案内