Re: [HACKERS] implementing outer joins - Mailing list pgsql-hackers

From Bruce Momjian
Subject Re: [HACKERS] implementing outer joins
Date
Msg-id 199807030408.AAA17893@candle.pha.pa.us
Whole thread Raw
In response to implementing outer joins  (Brett McCormick <brett@work.chicken.org>)
List pgsql-hackers
>
> does anyone have any idea how difficult it would be to implement, and
> perhaps point me in the right direction?
>
>

Good question.  My guess is that you have to set a flag in the
RangeTblEntry for OUTER, and have this flag read by all the join
methods.  Most(all?) of them have an inner and outer loop.  I think
OUTER has to be in the outer part of the loop, and as you are spinning
through the outer loop, if you don't find any matches in the inner loop,
you output the outer loop with NULLs for the inner values.  Now if you
have only two tables joined, and they are both outer, I am not sure how
to handle that.

Check out the new backend "How PostgreSQL Processes a Query" for hints
on where to make changes.  (I have gotten no comments on the new
version.)  Also check out the Developers FAQ for ideas too.


--
Bruce Momjian                          |  830 Blythe Avenue
maillist@candle.pha.pa.us              |  Drexel Hill, Pennsylvania 19026
  +  If your life is a hard drive,     |  (610) 353-9879(w)
  +  Christ can be your backup.        |  (610) 853-3000(h)

pgsql-hackers by date:

Previous
From: Brett McCormick
Date:
Subject: you are lost in a maze of twisting code, all alike
Next
From: Roman Volkoff
Date:
Subject: RE: [PORTS] Re: [HACKERS] no answer to Solaris 2.6 failure to bu