0

我有下表,其中包含记录。

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 函数。它没有正常工作。有人遇到过同样的情况吗?

4

1 回答 1

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;
于 2013-07-28T14:19:42.893 回答