Gang,
I've got what I think should be a pretty simple problem- I just can't
figure out how I'd do it. Heck, I can't even figure out how I'd search
for an answer to this problem.
I've got 2 tables: member and member_attr
Member is just a standard entry for a member. Very simple:
table member {
id integer,
name character varying(30)
}
Member_attr is just a table of name/value pairs, such as:
table memberextra {
memberid integer,
param1 character varying(512),
param2 character varying(512),
}
where param1 is the name, param2 is the value.
Right now, I can:
select member.id, member.name, member_attr.param1, member_attr.param2
from member, member_attr where member.id = member_attr.memberid;
...this gives me n rows per member where n = # of attributes for that
member, like this:
id | name | param1 | param2
=======================================
1 | dave | home | /home/dave
1 | dave | testing | 1
2 | john | home | /home/john
...is there some way to make this return like this:
id | name | home | testing
======================================
1 | dave | /home/dave | 1
2 | john | /home/john |
...where it sort of "expands" the rows out into columns? Am I just
going about this the wrong way? Thoughts on the subject would be
greatly appreciated.
thanks!
/kurt