2013-07-28 39 views
0

我有下面的表格,它載有記錄。SQL樞紐式記錄安排

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功能。它沒有正常工作。任何人遇到相同的?

+0

「它沒有正常工作」 - 在嘆息....... –

+3

如若IDS樣本數據真的是1,1,2,2,3,3? –

+0

如何顯示您使用的查詢無法正常工作? – Tombatron

回答

2

假設在第一個表的編號可能找出對,你可以做聚合:

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;