On Thu, Aug 14, 2003 at 10:40:02 -0400,
  Slawek Jarosz <[EMAIL PROTECTED]> 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?

You use outer joins to do this. Something like:
SELECT table1.*, table2.pk2 FROM
  table1 left join table2 on table2.f2 = table1.pk1;

---------------------------(end of broadcast)---------------------------
TIP 8: explain analyze is your friend

Reply via email to