Selecting rows as if they were columns?
От | Kurt Overberg |
---|---|
Тема | Selecting rows as if they were columns? |
Дата | |
Msg-id | 3F855F38.9070803@hotdogrecords.com обсуждение исходный текст |
Ответы |
Re: Selecting rows as if they were columns?
|
Список | pgsql-sql |
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
В списке pgsql-sql по дате отправления: