Re: Index Choice Problem - Mailing list pgsql-performance

From Tom Lane
Subject Re: Index Choice Problem
Date
Msg-id 15893.1140241984@sss.pgh.pa.us
Whole thread Raw
In response to Index Choice Problem  (Adam Alkins <adam.alkins@gmail.com>)
Responses Re: Index Choice Problem
List pgsql-performance
Adam Alkins <adam.alkins@gmail.com> writes:
> SELECT t.topic_id
>             FROM phpbb_topics AS t
>                 WHERE t.forum_id = 71
>                     AND t.topic_id NOT IN (205026, 29046, 144569, 59780, 187424,
> 138635, 184973, 170551, 22419, 181690, 197254, 205130)
>                         ORDER BY t.topic_last_post_time DESC
>                             LIMIT 23 OFFSET 0

If you're using 8.1, you'd probably find that an index on (forum_id,
topic_last_post_time) would work nicely for this.  You could use it
in prior versions too, but you'd have to spell the ORDER BY rather
strangely:
    ORDER BY forum_id desc, topic_last_post_time desc
The reason for this trickery is to get the planner to realize that
the index order matches the ORDER BY ...

            regards, tom lane

pgsql-performance by date:

Previous
From: Antal Attila
Date:
Subject: Stored proc and optimizer question
Next
From: "Adam Alkins"
Date:
Subject: Re: Index Choice Problem