Re: Not use index on setof from Sql Function - Mailing list pgsql-general

From Martijn van Oosterhout
Subject Re: Not use index on setof from Sql Function
Date
Msg-id 20050309171450.GF1239@svana.org
Whole thread Raw
In response to Not use index on setof from Sql Function  (Alessandro Vincelli <a.vincelli@w4b.it>)
List pgsql-general
On Wed, Mar 09, 2005 at 04:49:28PM +0100, Alessandro Vincelli wrote:
>
> This simple function return setof table "DatiRegione"
>
>
> CREATE OR REPLACE FUNCTION public._stato_dati_regione_rt(text)
>   RETURNS SETOF "DatiRegione" AS
> '
>     SELECT DISTINCT  ON ("Codice_regione")  dr.* FROM "DatiRegione"
> '
>  LANGUAGE 'sql' VOLATILE STRICT;

You can't do an index scan on a function. As far as the executor is
concerned, a function is an opaque object. Perhaps you actually want a
view? They allow optimisations like the one you're looking for...

Hope this helps,
--
Martijn van Oosterhout   <kleptog@svana.org>   http://svana.org/kleptog/
> Patent. n. Genius is 5% inspiration and 95% perspiration. A patent is a
> tool for doing 5% of the work and then sitting around waiting for someone
> else to do the other 95% so you can sue them.

Attachment

pgsql-general by date:

Previous
From: "Joshua D. Drake"
Date:
Subject: Re: PostgreSQL still for Linux only?
Next
From: marcelo Cortez
Date:
Subject: segmentation fault