我在這個網站上看到很多例子,但我還沒有得到任何解決方案。所以iam發佈了這個問題。
請建議我如何解決此問題。 Iam在oracle上工作11gR1版本。將列轉換爲oracle中的行11gR1
year price Quantity
1991 10 50
2008 20 96
我想輸出
1991 10
1991 20
2008 50
2008 96
我試圖與旋轉功能,但沒有實現和獲得異常的SQL命令沒有正確結束。下面是
是我的查詢。 Iam不擅長SQL。
select * from (select year, price ,quanty from my_table)
pivot(min(year) year in (price, quanty));
編輯了以上問題:
select year, value
from my_table
unpivot
(
value
for col in (price, quantity)
) u
對於上述查詢,如果我有產品的名稱名稱多了一個列是VARCHAR,IAM讓我在通過列上方查詢如下。
select year, value
from my_table
unpivot
(
value
for col in (price, quantity,productname)
) u
得到錯誤的
ORA-01790:表達式必須具有相同的數據類型對應的表達
請@BlueFeet表明這一點。
的ORA-01790錯誤是不言自明的錯誤,你不這麼認爲嗎? – zaratustra 2014-09-05 12:22:20