From: | Stephan Szabo <sszabo(at)megazone23(dot)bigpanda(dot)com> |
---|---|
To: | Patrick Hatcher <PHatcher(at)macys(dot)com> |
Cc: | <pgsql-sql(at)postgresql(dot)org> |
Subject: | Re: What is Syntax for multiple FULL OUTER JOINS? |
Date: | 2002-03-20 04:08:39 |
Message-ID: | 20020319200610.W40360-100000@megazone23.bigpanda.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-sql |
On Tue, 19 Mar 2002, Patrick Hatcher wrote:
> Is it possible to do a full outer join on 3 or more queries? I figured out
> how to do 2, but I get an error message when trying to do three
>
>
> Example:
>
> (works)
> select coalesce(a.f1, b.f1) as col_1, b.f2 as col_2
> from
> (select f1, f2 from table1 where f3 =1) a
> FULL OUTER JOIN
> (select f1, f2 from table1 where f3 =2) b
> on a.f1 = b.f1
>
> (does not work)
> select coalesce(a.f1, b.f1,c.f1) as col_1, b.f2 as col_2, c.f2 as col_3
> from
> (select f1, f2 from table1 where f3 =1) a
> FULL OUTER JOIN
> (select f1, f2 from table1 where f3 =2) b
> FULL OUTER JOIN
> (select f1, f2 from table1 where f3 =3) c
> on a.f1 = b.f1and a.f1 = c.f1
You need separate on clauses for each join:
select ...
from (
(select f1, f2 from table1 where f3=1) a
full outer join
(select f1, f2 from table1 where f3=2) b
on a.f1=b.f1)
full outer join
(select f1,f2 from table1 where f3=3) c
on a.f1=c.f1
should do it I think.
From | Date | Subject | |
---|---|---|---|
Next Message | german pulido | 2002-03-20 15:26:30 | plpgsql how to iterate through record values? |
Previous Message | Patrick Hatcher | 2002-03-20 03:28:20 | What is Syntax for multiple FULL OUTER JOINS? |