[pgsql-jp: 30617] Re: order by でソートした順に番号を付けたい

moto kawasaki kawasaki @ kawasaki3.org
2003年 7月 28日 (月) 14:25:45 JST


From: SATOH Kiyoshi <satoh0 @ hakuba.jp>
Subject: [pgsql-jp: 30615] order by でソートした順に番号を付けたい
Date: Mon, 28 Jul 2003 12:50:25 +0900
Message-ID: <20030728123433.B648.SATOH0 @ hakuba.jp>

satoh0>  A という項目で order by でソートして limit で上位だけ取り出し、それを 
satoh0> B という他の項目でまたソートし直して、Aでソートした順位も含めて表示たい
satoh0> と考えています。
satoh0> 
satoh0> 例:
satoh0> 
satoh0> AとB、2カラムのテーブル。
satoh0>  A | B
satoh0> ---+--
satoh0> 30 | a
satoh0> 20 | b
satoh0> 40 | c
satoh0> 10 | d

実に安直ですが、

satoh0> カラムAで order by でソートし limit 3 で切り、その順位も出す。
satoh0> 順位 |  A | B
satoh0> -----+----+--
satoh0>    1 | 10 | d
satoh0>    2 | 20 | b
satoh0>    3 | 30 | a

こういう view をつくっておけばできますよね。


satoh0> 上記の結果をさらに、カラムBでソート。
satoh0> 順位 |  A | B
satoh0> -----+----+--
satoh0>    3 | 30 | a
satoh0>    2 | 20 | b
satoh0>    1 | 10 | d
satoh0> 
satoh0> この結果を表示したいというものです。



pgsql-jp メーリングリストの案内