[英]teradata sql pivot multiple occurrences into additional columns
我有這樣的事情:
ID Result
1 value1
2 value1
2 value2
3 value1
4 value1
4 value2
4 value3
我想返回這樣的內容:
ID Result1 Result2 Result3
1 value1
2 value1 value2
3 value1
4 value1 value2 value3
我已經搜索過關鍵點,連貫點和中斷點,但我找不到簡單,明智的解決方案。
TIA
不幸的是,Teradata沒有PIVOT函數,但是您可以將聚合函數與CASE表達式一起使用以獲取結果。
select id,
max(case when seq =1 then result end) result1,
max(case when seq =2 then result end) result2,
max(case when seq =3 then result end) result3
from
(
select id, res, row_number() over(partition by id order by result) seq
from yourtable
) d
group by id
order by id;
如果每個ID都有更多值,則可以添加更多CASE表達式。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.