Re: planner/optimizer question

From: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
To: brad-pgperf(at)duttonbros(dot)com
Cc: pgsql-performance(at)postgresql(dot)org
Subject: Re: planner/optimizer question
Date: 2004-04-28 04:27:59
Message-ID: 23032.1083126479@sss.pgh.pa.us
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-performance

brad-pgperf(at)duttonbros(dot)com writes:
> ... Wouldn't the most efficient plan be to scan the index regardless
> of crm_id because the only columns needed are in the index?

No. People coming from other databases often have the misconception
that queries can be answered by looking only at an index. That is never
true in Postgres because row validity info is only stored in the table;
so we must always visit the table entry to make sure the row is still
valid/visible for the current query.

Accordingly, columns added to the index that aren't constrained by the
WHERE clause are not very useful ...

regards, tom lane

In response to

Responses

Browse pgsql-performance by date

  From Date Subject
Next Message Gary Doades 2004-04-28 06:35:41 Re: planner/optimizer question
Previous Message Christopher Kings-Lynne 2004-04-28 01:30:44 Re: [JDBC] [PERFORM] is a good practice to create an index on the