구분자 2개 로 컬럼 2개 0 1 1,096

by 짱구 [2015.06.22 17:30:34]


데이터가 이런식으로 K1,FTF#K2,TTT#K3,TTF 구분자가 2개 ( , # ) 로 들어오는데

 

저 데이터들을 2개의 컬럼으로 넣을 수 있나요?

 

SELECT COLUMN_VALUE
  FROM TABLE(SPLIT('K1,FTF#K2,TTT#K3,TTF', '#'))      

 

이렇게 하니까 데이터가

 

#기준( K1,FTF

         K2,TTT

         K3,TTF

         )

으로  끊어주기는 하는데 그다음에 콤마(,) 로 끊어서 컬럼으로 분리하고 싶은데 어떻게 해야 될지 모르겠습니다...

 

도움부탁드려요

 

 

 

 

by 창조의날개 [2015.06.22 18:05:16]

SELECT regexp_substr(COLUMN_VALUE,'[^,]+', 1, 1 ) COLUMN_VALUE_1
     , regexp_substr(COLUMN_VALUE,'[^,]+', 1, 2 ) COLUMN_VALUE_2
FROM (
      SELECT regexp_substr(COLUMN_VALUE,'[^#]+', 1, RN ) COLUMN_VALUE
      FROM (SELECT 'K1,FTF#K2,TTT#K3,TTF' COLUMN_VALUE FROM DUAL) T1
         , (SELECT ROWNUM RN FROM DUAL CONNECT BY LEVEL <= 100) T2
)
WHERE COLUMN_VALUE IS NOT NULL
;

 

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