Oracle FAQ Your Portal to the Oracle Knowledge Grid
HOME | ASK QUESTION | ADD INFO | SEARCH | E-MAIL US
 

Home -> Community -> Usenet -> c.d.o.server -> Re: Join A to B via AB where AB may or may not join

Re: Join A to B via AB where AB may or may not join

From: Tonkuma <tonkuma_at_fiberbit.net>
Date: Sat, 15 Dec 2007 06:59:31 -0800 (PST)
Message-ID: <5bf9982e-d7ef-4fbc-85fc-38bcf81cf402@d27g2000prf.googlegroups.com>


On Dec 15, 5:03 am, "cc" <chris.colclo..._at_nospam.jhuapl.edu> wrote:
> SELECT *
>
> FROM TABLE_AB AB
>
> WHERE EXISTS (
>
> SELECT AB.A
>
> FROM TABLE_A
>
> WHERE AB.A = TABLE_A.A)
>
> UNION
>
> SELECT A, B
>
> FROM TABLE_A, TABLE_B
>
> WHERE NOT EXISTS (
>
> SELECT A, B
>
> FROM TABLE_AB
>
> WHERE TABLE_A.A = TABLE_AB.A)
>
> ORDER BY 1,2
>

Another solution may be as following.(Not tested.) SELECT A.a

     , COALESCE(AB.b, B.b) AS b
  FROM Table_A A

       LEFT OUTER JOIN
       Table_AB AB
         ON AB.a = A.a
       LEFT OUTER JOIN
       Table_B  B
         ON AB.a IS NULL;
Received on Sat Dec 15 2007 - 08:59:31 CST

Original text of this message

HOME | ASK QUESTION | ADD INFO | SEARCH | E-MAIL US