구분자로 되어 있는 열을 행으로 0 2 117

by 능글맞은 너구리 [SQL Query] 구분자 [2018.09.12 18:39:16]


아래 데이타와 같이 열로 되어 있는 데이타를 행으로 쿼리 하고 싶습니다.

도움 부탁드립니다.

 

원본 데이타

A111111 38353965, 38359185
A111112 38361286
A111113 38351969, 81142578

 

결과 데이타

A111111 38353965
A111111 38359185
A111112 38361286
A111113 38351969
A111113 81142578
by 우리집아찌 [2018.09.13 09:16:31]
WITH T ( COL1 , COL2)  AS (
SELECT 'A111111','38353965,38359185' FROM DUAL UNION ALL
SELECT 'A111112','38361286'          FROM DUAL UNION ALL
SELECT 'A111113','38351969,81142578' FROM DUAL
), COPY_T AS (
SELECT LEVEL LV FROM DUAL CONNECT BY LEVEL <= ( SELECT MAX(REGEXP_COUNT(COL2,',')) FROM T ) + 1 
)


SELECT COL1 , REGEXP_SUBSTR(COL2,'[^,]+',1,LV) AS VAL 
  FROM T  
     , COPY_T
 WHERE LV <= REGEXP_COUNT(T.COL2,',') + 1 
 ORDER BY COL1 

 


by 능글맞은 너구리 [2018.09.18 10:21:06]

감사합니다. ^^

댓글등록
SQL문을 포맷에 맞게(깔끔하게) 등록하려면 code() 버튼을 클릭하여 작성 하시면 됩니다.
로그인 사용자만 댓글을 작성 할 수 있습니다. 로그인, 회원가입