Re: Optional join - Mailing list pgsql-sql

From David Fetter
Subject Re: Optional join
Date
Msg-id nXidnVVfXr8X6aGiXTWc-w@speakeasy.net
Whole thread Raw
In response to Optional join  ("Slawek Jarosz" <Jarosz.S@ems-t.ca>)
List pgsql-sql
"Slawek Jarosz" <Jarosz.S@ems-t.ca> wrote:
> Hi,

> I trying to write a query that will join 2 tables.   Here's the
> concept:

> Table 1: table1, primary key pk1
> Table 2: table2, primary key pk2

> One of the fields (f2) in table2 contains either the primary key of
> table1 or a NULL value.  So normally a pretty basic query:

> SELECT table1.*, table2.pk2
> FROM table1, table2 WHERE table2.f2 = table1.pk1;  

> BUT what I would like to do is show all records of Table 1 even if
> there is no match in Table 2.  Meaning that the reults could be 

> table1...   table2.pk2
> table1...   NULL

> Doable?

Yes.

SELECT table1.*, table2.pk2
FROM table1 LEFT OUTER JOIN table2 ON (table1.pk1 = table2.pk2);

HTH :)

Cheers,
D
-- 
David Fetter david@fetter.org http://fetter.org/
phone: +1 510 893 6100    cell: +1 415 235 3778

Power over a man's subsistence is power over his will.                                               Alexander
Hamilton


pgsql-sql by date:

Previous
From: "ProgHome"
Date:
Subject: Re: How to optimize this query ?
Next
From: Bengali
Date:
Subject: [Newbie] migrating a stored procedure from MSSQL to postgresql