출처 : http://lawmin.tistory.com/26
행 -> 열 전환
[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;
'일반' 카테고리의 다른 글
EMP TABLE, DEPT TABLE (0) | 2013.04.17 |
---|---|
Syntax error, annotations are only available if source level is 5.0 (0) | 2013.02.14 |
윈도우에서 eclipse 안뜨는 경우 1가지 (0) | 2013.01.29 |
(펌) 오라클 value 특정 문자를 치환 (0) | 2012.02.07 |
간단 synonym(view) (0) | 2011.12.23 |