SQL枢轴式记录安排

时间:2013-07-28 14:15:33

标签: sql pivot axis direction

我有下表带有记录。

ID header      value
1  firstname   James
1  lastname    Tulan
2  firstname   Berty
2  lastname    O-Nelly
3  firstname   Ana
3  lastname    Santos

我需要按如下方式显示记录

id firstname    Lastname
1  James        Tulan
2  Berty        O-Nelly
3  Ana          Santos

我尝试使用SQL PIVOT功能。它没有正常工作。有人遇到过同样的问题吗?

1 个答案:

答案 0 :(得分:2)

假设第一个表中的ID确实标识了对,您可以只进行聚合:

select id,
       max(case when header = 'firstname' then value end) as firstname,
       max(case when header = 'lastname' then value end) as lastname
from t
group by id;