Re: LEFT OUTER JOIN problem - Mailing list pgsql-sql

From Josh Berkus
Subject Re: LEFT OUTER JOIN problem
Date
Msg-id web-126925@davinci.ethosmedia.com
Whole thread Raw
In response to LEFT OUTER JOIN problem  (Ludek Finstrle <xfinstrl@informatics.muni.cz>)
List pgsql-sql
Ludek,
>   I have this problem (maybe only in my head ;o)):

Yup.  Or it's a language problem.  There's a fair Czech community of
PgSQL users, so hopefully you can get in touch with some of them.  (Your
English is better than any of my 2nd languages -- it's just that
techincal docs are hard enough to understand in one's native language!)

> SELECT * FROM table1 LEFT OUTER JOIN table2 ON (table1.id =
> table2.table1_id)
>   LEFT OUTER JOIN table3 ON (table2.id = table3.table2_id);
> 
> This select return me only one row:
> 1,'blabla',1,1,'hello',NULL,NULL,NULL
> 
> But I think it may return two rows:
> 1,'blabla',1,1,'hello',NULL,NULL,NULL
> 2,'arrrgh',NULL,NULL,NULL,NULL,NULL,NULL

Yes, it will.  The query you want is:
SELECT * FROM table1 JOIN table2 ON (table1.id =table2.table1_id)  LEFT OUTER JOIN table3 ON (table2.id =
table3.table2_id);

-Josh

______AGLIO DATABASE SOLUTIONS___________________________                                      Josh Berkus Complete
informationtechnology      josh@agliodbs.com  and data management solutions       (415) 565-7293 for law firms, small
businesses       fax 621-2533   and non-profit organizations.      San Francisco
 


pgsql-sql by date:

Previous
From: Tom Lane
Date:
Subject: Re: Aggregate Aggravation
Next
From: Stephan Szabo
Date:
Subject: Re: LEFT OUTER JOIN problem