Re: [INTERFACES] Re: [HACKERS] changes in 6.4

Hannu Krosing <hannu@trust.ee>

From: Hannu Krosing <hannu@trust.ee>
To: Bruce Momjian <maillist@candle.pha.pa.us>
Cc: David Hartwig <daveh@insightdist.com>, pgsql-interfaces@postgreSQL.org, hackers@postgreSQL.org
Date: 1998-07-16T08:41:47Z
Lists: pgsql-hackers
Bruce Momjian wrote:
> 
> > The results are profound.    Queries that used to scan tables because of the
> 
> How about if instead of doing:
> 
>         select * from tab1 where val = 3
>         union
>         select * from tab1 where val = 4
>         ...
> 
> you change it to:
> 
>         select * from tab1 where val in (
>                 select 3
>                 union
>                 select 4
>         )
> 

the explosion happens for ORs of multiple ANDs that get rewritten to:

select * from tabl wehere val1=1 and val2=1 and val3=1
union
select * from tabl wehere val1=1 and val2=1 and val3=2
union
...


And there is no way of doing (at least presently):

select * from table where (val1,val2,val3) in (select 1,1,1 union select
1,1,2);

Hannu