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