multiple lookup per row - Mailing list pgsql-sql

From Gary Stainburn
Subject multiple lookup per row
Date
Msg-id 01072010391603.16118@gary.ringways.co.uk
Whole thread Raw
Responses Re: multiple lookup per row  ("Josh Berkus" <josh@agliodbs.com>)
List pgsql-sql
Hi all,

I've got a table 'phones' which has an indexed key 'pid' of type int4, and a 
phone number of type varchar(12).

I've then got a table 'members'  which as an index key 'mid' of type int4.

Now, obviously, if each member only had one phone number, I could simply pull 
it in using a join.  My problem is that each member has (potentially) a voice 
line 'mphone', a fax line 'mfax', and a mobile (that's a cellphone to you lot 
over the pond) 'mmobile'.

How would I embelish a 'select * from members........' so that it included 
the three phone numbers if they exist?

The only solution I can think of is to write a plpgsql function to do the 
lookup and call that three times as part of the select, something like

select *, getphone(mphone) as phone, getphone(mfax) as fax.....

but a purely SQL solution would be nicer.

-- 
Gary Stainburn
This email does not contain private or confidential material as it
may be snooped on by interested government parties for unknown
and undisclosed purposes - Regulation of Investigatory Powers Act, 2000     


pgsql-sql by date:

Previous
From: "David M. Richter"
Date:
Subject: Query optimizing - paradox behave
Next
From: Gary Stainburn
Date:
Subject: example of [outer] join