Re: Optimize expresiions. - Mailing list pgsql-general

From Richard Huxton
Subject Re: Optimize expresiions.
Date
Msg-id 45A620AE.6030905@archonet.com
Whole thread Raw
In response to Optimize expresiions.  (han.holl@informationslogik.nl)
Responses Re: Optimize expresiions.  (han.holl@informationslogik.nl)
List pgsql-general
han.holl@informationslogik.nl wrote:
> Now the query:
> select item from aview where exp > 0 and cheap > 0;
> will lead to a sequential scan on atable with filter:
> very_expensive_function(item) > 0 and cheap_function(item) > 0
>
> The query would run much faster with the filter reordered.
> Is there a way to tell the planner/optimizer that certain functions are more
> expensive than others, and should be postponed in lazy evaluation ?
> Or is there a hook in the system that would allow me too look at and maybe
> reorder expressions before they are executed ?

Not really. Perhaps look into using a functional/expressional index and
see if that does the job for you.

http://www.postgresql.org/docs/8.2/static/indexes-expressional.html
http://www.postgresql.org/docs/8.2/static/sql-createfunction.html

--
   Richard Huxton
   Archonet Ltd

pgsql-general by date:

Previous
From: Peter Eisentraut
Date:
Subject: Re: PG compilation
Next
From: "Alexander Farber"
Date:
Subject: Re: Knowing the length(convert(username using windows_1251_to_utf8))