On Fri, 2007-03-09 at 09:01, Gerardo Herzig wrote:
> Hi all. I have this 2 relations
>
SNIP
> Index Cond: ((upper((word)::text) ~>=~ 'TEST'::character varying) AND (upper((word)::text)
~<~'TESU'::charactervarying))
> -> Hash (cost=9.08..9.08 rows=408 width=55)
> -> Seq Scan on pages (cost=0.00..9.08 rows=408 width=55)
>
> (8 rows)
>
>
> Watch the last row of the explain command. It makes a sequential scan
> on the pages table, like it is not using the index on the "id" field.
>
> The result itself is OK, but i will populate the tables so i think
> that later that sequential scan would be a problem.
Welcome to the world of tomorrow! hehe. PostgreSQL uses a cost based
planner. It decided that an index would cost more than a seq scan, so
it chose the seq scan. As mentioned in other posts, you'll need to do
an analyze. Also, look up things like vacuum / autovacuum as well.
> Im using postgres 8.1.3
You need to upgrade to 8.1.8 or whatever the latest version is by the
time this email gets to you :) 8.1.3 is about a year out of date.