Re: LEFT OUTER JOIN problem

From: "Josh Berkus" <josh(at)agliodbs(dot)com>
To: Ludek Finstrle <xfinstrl(at)informatics(dot)muni(dot)cz>, pgsql-sql(at)postgresql(dot)org
Subject: Re: LEFT OUTER JOIN problem
Date: 2001-09-27 18:22:55
Message-ID: web-126925@davinci.ethosmedia.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: 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 information technology josh(at)agliodbs(dot)com
and data management solutions (415) 565-7293
for law firms, small businesses fax 621-2533
and non-profit organizations. San Francisco

In response to

Browse pgsql-sql by date

  From Date Subject
Next Message Laurette Cisneros 2001-09-27 20:56:14 format timestamp
Previous Message Esteban Gutierrez Abarzua 2001-09-27 18:13:49 simple question!