我有一個名為 TaxAmount 的表。它有 3 列(ID、年份、金額)。參考下圖。

我想將每一行分成 12 個月。我在下面附上了一張示例圖片。

我是甲骨文方面的新手。請幫我撰寫一個Oracle 查詢來顯示上述結果。
我嘗試了 ROWNUM。但沒有運氣。
uj5u.com熱心網友回復:
這是一個選項:
SQL> select id, year, column_value as month, amount
2 from taxamount cross join
3 table(cast(multiset(select level from dual
4 connect by level <= 12
5 ) as sys.odcinumberlist))
6 order by id, year, month;
ID YEAR MONTH AMOUNT
---------- ---------- ---------- ----------
1 2022 1 100
1 2022 2 100
1 2022 3 100
1 2022 4 100
1 2022 5 100
1 2022 6 100
1 2022 7 100
1 2022 8 100
1 2022 9 100
1 2022 10 100
1 2022 11 100
1 2022 12 100
2 2022 1 200
2 2022 2 200
2 2022 3 200
2 2022 4 200
2 2022 5 200
2 2022 6 200
2 2022 7 200
2 2022 8 200
2 2022 9 200
2 2022 10 200
2 2022 11 200
2 2022 12 200
3 2022 1 150
3 2022 2 150
3 2022 3 150
3 2022 4 150
3 2022 5 150
3 2022 6 150
3 2022 7 150
3 2022 8 150
3 2022 9 150
3 2022 10 150
3 2022 11 150
3 2022 12 150
36 rows selected.
SQL>
轉載請註明出處,本文鏈接:https://www.uj5u.com/ruanti/466324.html
