On Thu, Aug 14, 2003 at 10:40:02 -0400, 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
basicquery:
>
> 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
reultscould 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;