Re: Fooling the query optimizer - Mailing list pgsql-php

From Adam Lang
Subject Re: Fooling the query optimizer
Date
Msg-id 013a01c091eb$d4e20c20$330a0a0a@rutgersinsurance.com
Whole thread Raw
In response to Fooling the query optimizer  ("Brent R.Matzelle" <bmatzelle@yahoo.com>)
List pgsql-php
Let me look into this.

Adam Lang
Systems Engineer
Rutgers Casualty Insurance Company
http://www.rutgersinsurance.com
----- Original Message -----
From: "Brent R.Matzelle" <bmatzelle@yahoo.com>
To: "PostgreSQL PHP" <pgsql-php@postgresql.org>
Sent: Thursday, February 08, 2001 10:41 AM
Subject: [PHP] Fooling the query optimizer


> Have any of you discovered a way to get around the current query optimizer
> limitation in Postgres?  For example, I have a table that has three
columns
> that I want to index for frequent search duties.  In Postgres I am forced
to
> create three indicies: one including all three columns, one for col2 and
> col3, and one for just col3.  Databases like MySQL can use the first index
> for these types of queries "SELECT * WHERE col2 = x AND col3 = y" and
"SELECT
> * WHERE col3 = y".  Postgres could only perform queries on indicies where
it
> looks like "SELECT * WHERE col1 = x AND col2 = y AND col3 = z" and "SELECT
*
> WHERE col1 = x AND col2 = y" etc.  However adding extra indexes as above
> would decrease the write speed on that table because a simple insert would
> require an update on all three indicies.
>
> Is there a way to fool Postgres to use the first index by creating a query
> like "SELECT * WHERE col1 = * AND col3 = x"?  I know I'm grasping for
straws
> here, but these issues can kill my database query performance.
>
> Brent


pgsql-php by date:

Previous
From: "Brent R.Matzelle"
Date:
Subject: Fooling the query optimizer
Next
From: "Adam Lang"
Date:
Subject: Re: Fooling the query optimizer