我的数据如下 -
FieldValue FiledID UnqiueID
Name1 13 1
Address1 14 1
NAme2 13 2
Address2 14 2
Name3 13 3
Address3 14 3
Date1 15 3
Date2 16 3
Date3 17 3
我想转置它。 我的结果如下 -
Name1地址1 0 0 0
名称2地址2 0 0 0
姓名3地址3日期1日期2日期3
我试图通过PIVOT来做,但没有成功。 喜欢通过SQL实现它而不喜欢任何SP。
答案 0 :(得分:0)
我倾向于使用条件聚合而不是pivot
来执行此操作:
select max(case when FieldId = 13 then FieldValue end) as Name,
max(case when FieldId = 14 then FieldValue end) as Address,
max(case when FieldId = 15 then FieldValue end) as Date1,
max(case when FieldId = 16 then FieldValue end) as Date2,
max(case when FieldId = 17 then FieldValue end) as Date3
from table t
group by uniqueid;