행 -> 열 전환
[C1] [C2]
[C1] [C2]
ID1 T
ID2 T
ID2 S
ID2 P
ID3 T
ID3 P
위와 같을 때 아래와 같이 행을 열로 한번에 나타내고 싶을 때?
[C1] [T] [S] [P]
ID1 Y
ID2 Y Y Y
ID3 Y Y
[Sol.]
SELECT C1,
MAX(DECODE(C2, 'T', 'Y', NULL)) "T",
MAX(DECODE(C2, 'S', 'Y', NULL)) "S",
MAX(DECODE(C2, 'P', 'Y', NULL)) "P"
FROM TABLE
GROUP BY C1
ORDER BY C1
---------------
행을 하나의 열로 합치기
---------------
행을 하나의 열로 합치기
SELECT REPLACE(MAX(SYS_CONNECT_BY_PATH(data, '/#/')), '/#/', '')
FROM (
SELECT ROWNUM rn,
t.*
FROM (
SELECT 'c' data FROM DUAL UNION ALL
SELECT 'b' data FROM DUAL UNION ALL
SELECT 'a' data FROM DUAL
) t
)
START WITH rn = 1
CONNECT BY PRIOR rn = rn - 1;