[pgsql-jp: 26887] Re: ランダムに並び替えて SELECTする
Yutaka tanida
yutaka @ hi-net.zaq.ne.jp
2002年 8月 2日 (金) 16:22:33 JST
谷田です。
On Fri, 2 Aug 2002 16:05:16 +0900
"中島 学" <manabu_nakajima @ fmltd.co.jp> wrote:
> 中島です。お答えいただき、ありがとうございます。
>
> 1.select ... order by (oid * v1) % v2 ;
> 2.order by random()
>
> と2通り考えられるということですね。
> どうもありがとうございました。
補足ですが、
(2)はランダム性としてはより高いですが
(1)には再現性があるというメリットがあります。ですから
select ... offset 20 limit 20
select ... offset 20 limit 40
のような処理でページ分けをするなら(1)のような手法が必須だと思います。そ
うでなければ(2)の方がいいでしょう。
--
Yutaka tanida <yutaka @ hi-net.zaq.ne.jp>
pgsql-jp メーリングリストの案内