Re: [SQL] Is it possible to left join based on previous joins result

2006-09-09 Thread Aaron Bono
On 9/7/06, Emi Lu [EMAIL PROTECTED] wrote:
I tried the example as the following:create table a(col1);create table b(col1, col2)select a.*from a inner join b using(col2)left join b.col2 as c on (c.col1 = a.col1)System notifies me that b is not a schema name.
So, I guess the approach that I tried to do is not acceptable by Pgsqlgrammar.the syntax isLEFT JOIN [table] AS ...you have b.col2 which means the database will interpret col2 as the table name and subsequently b as the schema name
You should have SELECT a.*FROM aINNER JOIN b using(col2)LEFT JOIN b as c on (c.col1 = a.col1)In the using(col2), what columns and tables are you joining there? I always dislike that syntax as it is ambiguous in some cases and not very easy to read.
== Aaron Bono Aranya Software Technologies, Inc. http://www.aranya.com 
http://codeelixir.com==


[SQL] Is it possible to left join based on previous joins result

2006-09-07 Thread Emi Lu

Hello,

Is it possible to do something like:

select ...
from t1
inner join t2 ...
left join t2.colN

When t1 inner join with t2 I got unique result for t2.colN( colN's value 
is table name).


Can I continue to left join with the column colN in table t2?

Thanks




---(end of broadcast)---
TIP 4: Have you searched our list archives?

  http://archives.postgresql.org


Re: [SQL] Is it possible to left join based on previous joins result

2006-09-07 Thread Emi Lu

I tried the example as the following:

create table a(col1);
create table b(col1, col2)

select a.*
from a inner join b using(col2)
left join b.col2 as c on (c.col1 = a.col1)

System notifies me that b is not a schema name.

So, I guess the approach that I tried to do is not acceptable by Pgsql 
grammar.






Is it possible to do something like:

select ...
from t1
inner join t2 ...
left join t2.colN

When t1 inner join with t2 I got unique result for t2.colN( colN's value 
is table name).


Can I continue to left join with the column colN in table t2?

Thanks




---(end of broadcast)---
TIP 4: Have you searched our list archives?

  http://archives.postgresql.org



---(end of broadcast)---
TIP 2: Don't 'kill -9' the postmaster


Re: [SQL] Is it possible to left join based on previous joins result

2006-09-07 Thread Stephan Szabo
On Thu, 7 Sep 2006, Emi Lu wrote:

 Hello,

 Is it possible to do something like:

 select ...
 from t1
 inner join t2 ...
 left join t2.colN

 When t1 inner join with t2 I got unique result for t2.colN( colN's value
 is table name).

 Can I continue to left join with the column colN in table t2?

No, in part because it'd have to actually evaluate the first join in order
to even plan the remainder of the query. It might be possible to do
something similar, albeit somewhat slowly, inside a set returning
function, but you'd have to decide how to handle more than one row being
returned from the first join even if the value is unique, is that one join
against the table or multiple joins.

---(end of broadcast)---
TIP 1: if posting/reading through Usenet, please send an appropriate
   subscribe-nomail command to [EMAIL PROTECTED] so that your
   message can get through to the mailing list cleanly