[pgsql-jp: 40850] Re: 順番が一定しない

H.Nakai nakai @ shinko.co.jp
2011年 7月 4日 (月) 14:03:07 JST


ご返信ありがとうございます。

(2011/07/04 13:13), Itagaki Takahiro wrote:
> 2011/7/4 H.Nakai <nakai @ shinko.co.jp>:
> > 2ページ目で出てくるべき行が出てこないで、1ページ目に
> > 含まれていた行が出てきます。
> 
> 仕様です。なので、ページングをする場合には
> ORDER BY のキーの末尾に ID を含めてください。
> 
デフォルトで、IDは追加されない仕様だったと思います。
昔は表を作成するとデフォルトでIDがレコードの項目に追加(隠し項目)
されましたが、現在の仕様では明示しないと追加されなかったと思います。
それにIDを使うのは作法上、良くないと言われた記憶もあります。
# かれこれ10年近くPostgreSQLを使っています。

> > 8.2.3ではこういう現象は(たまたま?)発生しませんでした。
> Top-N ソートが入ったのって 8.4 でしたっけ?
> LIMIT が付く場合のソートの実装が 8.2 と 8.4 で
> 違いがあるので、表面化したのだと思われます。
>
やっぱりそうでしたか。
論理的にしようがないとも思いますが、一定しないのが気になります。
負荷分散のときに、同じ結果を返さないということにもなりそうですね。

-- 
-=-=-=-=  SHINKO ELECTRIC INDUSTRIES CO., LTD.           =-=-=-=-
=-=-=-=-    Research & Development Div.                  -=-=-=-=
-=-=-=-=      Designing Technology Development Dept.     =-=-=-=-
=-=-=-=-  Name:Hisakazu Nakai          TEL:026-263-3922  -=-=-=-=
-=-=-=-=  Mail:nakai @ shinko.co.jp      FAX:026-263-4562  =-=-=-=-


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