我遇到了一個問題,我不知道如何解決它。將查詢nxn的結果轉換爲列 - ORACLE
我有以下結構:
- 表PIECE
- 表PIECE_CHARACTHERISTIC
- 表特徵
表PIECE_CHARACTHERISTIC使得PIECE和特性之間的關係的N×N。
所以,一件可以有很多特點。 我需要一些characteristcs的,並顯示他們在查詢結果列:
SELECT PC.CHARACTERISTIC_ID, PC.CHAR_VALUE FROM PIECE P
INNER JOIN PIECE_CHARACTHERISTIC PC ON P.PIECE_ID = PC.PIECE_ID
WHERE
PC.CHARACTERISTIC_ID = 1 OR
PC.CHARACTERISTIC_ID = 2 OR
PC.CHARACTERISTIC_ID = 3;
由於此查詢的結果,我有這樣的事情:
PIECE CHARACTERISTIC_ID CHAR_VALUE
P1 1 A
P1 2 B
P1 3 C
P2 1 D
P2 2 E
P3 1 X
...
我想結果是這樣的:
PIECE CHAR_1 CHAR_2 CHAR_3
P1 A B C
P2 D E NULL
P3 X NULL NULL
恢復,我想轉換一列的特徵在許多列的結果與每個characteristi的值c爲這件作品。 非常感謝您的幫助!