[pgsql-jp: 36441] Re: 複合インデックス時のORDER BY DESC

FUKUSHIMA Katsuaki kfukushima @ sis.seino.co.jp
2005年 11月 27日 (日) 11:45:53 JST


福島@現実逃避モードです。

ORDER BY x DESC 高速化に対する直接の回答ではないですし、無茶な方法で
す。過去にどうしても必要に迫られて使いました。当時いろいろ試行錯誤し
てみたんですが、こんな方法しか思いつきませんでした。

以下のようなインデックスを作成しておいて、
CREATE INDEX idx_articles_i_j_d ON articles(i,(0-j));
データの抽出は、
SELECT * FROM articles WHERE i = 30 ORDER BY i,(0-j) LIMIT 10;

正統解とは程遠いと思いますが、ご参考になれば。

池上 俊介 wrote:

>メール末のarticlesテーブルに複合インデックスを作成し、
>SELECT * FROM articles WHERE i = 30 ORDER BY j DESC LIMIT 10;
>のような検索を高速化したいと思っています。
>





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