Thread: Turn correlated in subquery into join

Turn correlated in subquery into join

From
Dennis Bjorklund
Date:
Look like the mysql people found a subquery that postgresql doesn't
handle as good as possible:

   http://s.petrunia.net/blog/

Is there some deeper issue here that I fail to see or is it simply that
it hasn't been implemented but is fairly straigt forward? In the link
above they do state that it isn't a very common case anyway.

/Dennis

Re: Turn correlated in subquery into join

From
Tom Lane
Date:
Dennis Bjorklund <db@zigo.dhs.org> writes:
> Look like the mysql people found a subquery that postgresql doesn't
> handle as good as possible:

>    http://s.petrunia.net/blog/

> Is there some deeper issue here that I fail to see or is it simply that
> it hasn't been implemented but is fairly straigt forward?

I don't think it's straightforward: you'd need to do some careful
analysis to prove under what conditions such a transformation would be
safe.  If the answer is "always, it doesn't matter what the correlation
condition is" then the actual implementation would probably not be
tremendously difficult.  If there are restrictions then checking whether
the restrictions hold could be interesting ...

            regards, tom lane