Re: AW: Three types of functions, ala function redux.

From: mlw <markw(at)mohawksoft(dot)com>
To: Zeugswetter Andreas SB <ZeugswetterA(at)wien(dot)spardat(dot)at>
Cc: Hackers List <pgsql-hackers(at)postgresql(dot)org>
Subject: Re: AW: Three types of functions, ala function redux.
Date: 2000-12-21 12:27:56
Message-ID: 3A41F74C.A94890B1@mohawksoft.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

Zeugswetter Andreas SB wrote:
>
> > select * from table where col = function() ;
>
> > (2) "function()" returns a number of values that are independent of the
> > query. Postgres should be able to optimize this to be: "select * from
> > table where col in (val1, val2, val3, ..valn)." I guess Postgres can
> > loop until done, using the isDone flag?
>
> I think the above needs a different sql statement to begin with.
> The "= function()" clearly states that function is only allowed to return one row.
>
> The following syntax currently works, and is imho sufficient:
> select * from table where col in (select function());

Both syntaxes work, but always force a table scan. If you have an index
on 'col' it will not be used. If your table has millions of records,
this takes time.

--
http://www.mohawksoft.com

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Thomas Lockhart 2000-12-21 14:54:10 Re: AW: [HACKERS] PostgreSQL pre-7.1 Linux/Alpha Status...
Previous Message Larry Rosenman 2000-12-21 11:58:58 Re: CIDR output format