Re: If an index is based on 3 columns will a query using two of the columns utilize the index?

From: "Reid Thompson" <Reid(dot)Thompson(at)ateb(dot)com>
To:
Cc: <pgsql-general(at)postgresql(dot)org>
Subject: Re: If an index is based on 3 columns will a query using two of the columns utilize the index?
Date: 2005-09-12 14:05:36
Message-ID: F71C0DC6B4FD3648815AAA7F969E35290194F1FE@sr002-2kexc.ateb.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

Alvaro Herrera wrote:
> On Mon, Sep 12, 2005 at 09:43:57AM -0400, Reid Thompson wrote:
>> Example:
>> assume a table of 10 columns, three of which are fname, lname, and
>> dob. If an index is created on (fname, lname, dob), will a query that
>> utilizes two of the columns ( select 'data' from table where fname =
>> 'X' and lname = 'Y') utilize the index?
>
> Yes, if it is selective enough. (It _can_ use the index,
> which does not mean that it _will_ use it.) Note that if
> your example query used the columns (lname, dob), the answer would be
> "no."
>
Why is that? In order to use an index, does the query have to utilize
the 'first' element of the index?

reid

Responses

Browse pgsql-general by date

  From Date Subject
Next Message Michael Fuhr 2005-09-12 14:18:46 Re: If an index is based on 3 columns will a query using two of the columns utilize the index?
Previous Message Michael Fuhr 2005-09-12 14:04:53 Re: If an index is based on 3 columns will a query using two of the columns utilize the index?