Jihoon's IT Development

Web Developer's Hobby Development Notes

[Oracle] Row to Column, 행을 열로 합치기

여러 행을 특정 구분자(예:콤마[,])로 구분하며 합쳐야할 경우 사용되는 SQL 이다.

1
2
3
4
5
6
7
8
9
SELECT (SUBSTR (SYS_CONNECT_BY_PATH (PART_NM , ','), 2)) csv
FROM (
SELECT X.PART_NM , ROW_NUMBER () OVER (ORDER BY X.PART_NM ) rn,
COUNT (*) OVER () cnt, X.NFIX_REQ_NO
FROM Table_One X
)
WHERE rn = cnt
START WITH rn = 1
CONNECT BY rn = PRIOR rn + 1

결과 : 콤마로 구분지어져 한줄로 출력된다.