-1
我在甲骨文如何轉行到
Number Text
12345 ab
12345 abc
12345 acbd
以下數據我怎麼能轉換它成爲列:
Number Text1 Text2 Text3
12345 ab abc abcd
如何做到這一點使用SQL在Oracle中?
我在甲骨文如何轉行到
Number Text
12345 ab
12345 abc
12345 acbd
以下數據我怎麼能轉換它成爲列:
Number Text1 Text2 Text3
12345 ab abc abcd
如何做到這一點使用SQL在Oracle中?
爲了數據的多行旋轉爲列,首先我會用row_number()
,然後你可以使用聚合函數CASE表達式來得到最終結果:
select "Number",
max(case when seq = 1 then "Text" end) Text1,
max(case when seq = 2 then "Text" end) Text2,
max(case when seq = 3 then "Text" end) Text3
from
(
select "Number", "Text",
row_number() over(partition by "Number" order by "Text") seq
from yourtable
) d
group by "Number";
你對你的數據究竟做什麼?你想插入或從你的表中選擇? – user75ponic
從Oracle 11中查看PIVOT運算符。 – jods