Skip site navigation (1) Skip section navigation (2)

Re: Select for LEFT JOIN

From: tolik(at)aaanet(dot)ru (Anatoly K(dot) Lasareff)
To: Linh Luong <linh(dot)luong(at)computalog(dot)com>
Cc: pgsql-sql(at)postgresql(dot)org
Subject: Re: Select for LEFT JOIN
Date: 2001-05-29 06:29:07
Message-ID: 861yp8mzws.fsf@tolikus.hq.aaanet.ru (view raw or flat)
Thread:
Lists: pgsql-sql
>>>>> "LL" == Linh Luong <linh(dot)luong(at)computalog(dot)com> writes:

 LL> Hi,
 LL> I am trying to do a 2 joins between 3 tables.

 LL> ie) 
 LL> select <some field>, coalesce(TRR.ABC, SOC.ABC) as newABC, ...
 LL> from A join (B join C on (..)) on (..)) as TRR 
 LL> left join 
 LL> (D join E on (..)) as SOC on (TRR.Field1=SOC.Field2)

 LL> When I run this it says that there is an ambiguous field.  Yes after the
 LL> join for TRR and SOC they both contain a fields name ABC.  How can I
 LL> rename this field in the sql statement or how can I make it so the sql
 LL> statement know that they are different.

 LL> Please help.. .thanks

You have to use full-qualifyed field names, like this:

select trr.abc, soc.abc,....

In addition you can use aliases for field names:

select trr.abc as abc1, soc.abc as abc2, ....

-- 
Anatoly K. Lasareff                 Email:    tolik(at)aaanet(dot)ru 
                             http://tolikus.hq.aaanet.ru:8080

In response to

pgsql-sql by date

Next:From: Tom LaneDate: 2001-05-29 13:46:03
Subject: Re: Re: [SQL] Difficult SQL Statement
Previous:From: Tim BarnardDate: 2001-05-28 22:36:22
Subject: Re: [SQL] Difficult SQL Statement

Privacy Policy | About PostgreSQL
Copyright © 1996-2014 The PostgreSQL Global Development Group