将列标题转换为MySQL中的行

时间:2017-06-08 16:49:43

标签: mysql unpivot

我需要将我的表格标题“转换”为列并“加入”属性值。这比一个数据透视表问题更像是格式化问题,因为我不需要添加或组合多个值,我将只返回1个结果。

我运行查询以获取我需要的特定记录。

SELECT * FROM member WHERE id = 1;

RESULT:

id | name | height | hair colour | eye colour
---------------------------------------------
1  | john | 6ft    | black       | blue

我希望能够直接离开查询的结果是:

Feature     | Description
-------------------------
name        | john
height      | 6ft
hair colour | black
eye colour  | blue

所以说“只是”一个格式化问题我可能是错的,但阅读Pivot表等上的各种帖子,让我对如何做这样的事情更加困惑。

非常感谢任何解决方案。

先谢谢你们。

答案:

在使用数据透视功能失去意识之后 - 我只为每个列和值执行了mini select语句,并将它们联合起来。

select 'Feature', 'Description'
union all
select 'Name:' , name from member where id = 1
union all
select 'Height:', height from member where id = 1
union all
select 'Hair Colour:', hair_colour from member where id = 1
union all
select 'Eye Colour:', eye_colour from member where id = 1

0 个答案:

没有答案