[pgsql-jp: 38936] Re: グループごとの最大値を持つデータを取得したい
Akira Nakamura
nakamura_ml @ art.edisc.jp
2007年 11月 7日 (水) 13:07:34 JST
中村です。
SELECT distinct on( category ) * FROM test ORDER BY category ,cnt DESC;
では、ダメでしょうか。
重複に関しては、ORDER BYで上位になる様にすれば問題無いと思います。
> 神内と申します。いつも皆様お世話になっております。
>
> From: 鈴木孝征 <takamasa @ thaliana.myhome.cx>
> Subject: [pgsql-jp: 38931] Re: グループごとの最大値を持つデータを取得したい
> Date: Wed, 07 Nov 2007 11:49:00 +0900
>
> > 鈴木と申します。
> >
> > select * from test where (category, cnt) in (select
> category, max(cnt)
> > from test group by category);
> >
> > でどうでしょうか。
> >
>
> 非常に良く考えられた SQL であるとおもいますが、同じ cnt を持っている
> レコードがあった場合とかどうしましょうか?
>
> 悩みますね。
--
nakamura
pgsql-jp メーリングリストの案内