|
Posted by J.O. Aho on 02/27/06 01:46
Bill Karwin wrote:
> "lallous" <lallous@lgwm.org> wrote in message
> news:46eo94Fap8opU1@individual.net...
>> How can I write a query, passing it a 'rowid=1' and it should return
>> something like:
>> rowid=>1, name1=>'user1', name2=>'user1', name3=>'user2'
>>
>> So, when I pass that query a given ROWID it would return (not the ids of
>> the users, but) the names of the users from the NAMES table.
>
> Yes, this is fine; it requires three joins to the NAMES table:
>
> SELECT T.rowid, N1.name, N2.name, N3.name
> FROM TABLE2 AS T
> INNER JOIN NAMES AS N1 ON T.nameid1 = N1.id
> INNER JOIN NAMES AS N2 ON T.nameid2 = N2.id
> INNER JOIN NAMES AS N3 ON T.nameid3 = N3.id
Would be easier to see the result if naming the columns, or else they will be
listed with the same column name
SELECT T.rowid, N1.name AS Name1, N2.name AS Name2, N3.name AS Name3
FROM TABLE2 AS T
INNER JOIN NAMES AS N1 ON T.nameid1 = N1.id
INNER JOIN NAMES AS N2 ON T.nameid2 = N2.id
INNER JOIN NAMES AS N3 ON T.nameid3 = N3.id
//Aho
Navigation:
[Reply to this message]
|