첨부 실행 코드는 나눔고딕코딩 폰트를 사용합니다.
유용한 소스 코드가 있으면 icodebroker@naver.com으로 보내주시면 감사합니다.
블로그 자료는 자유롭게 사용하세요.

■ 구분자로 자르기

----------------------------------------------------------------------------------------------------

▶ 정규식 함수 사용하기

   . Oracle 10g 버전 이상에서 사용 가능하다.

 

 

SELECT DISTINCT REGEXP_SUBSTR(A.TXT, '[^|]+', 1, LEVEL) TXT

FROM

(

    SELECT 'A|B|C|D' TXT FROM DUAL

) A

CONNECT BY LEVEL <= LENGTH(REGEXP_REPLACE(A.TXT, '[^|]+', '')) + 1;

 

 

▶ SUBSTR, INSTR 함수 사용하기

   . Oracle 8i 버전 이상에서 사용 가능하다.

 

 

SELECT SUBSTR(A.TXT, INSTR(A.TXT, '|', 1, LEVEL) + 1, INSTR(A.TXT, '|', 1, LEVEL + 1) - INSTR(A.TXT, '|', 1, LEVEL) - 1) TXT

FROM

(

    SELECT '|' || 'A|B|C|D' || '|' TXT FROM DUAL

) A

CONNECT BY LEVEL <= LENGTH(A.TXT) - LENGTH(REPLACE(A.TXT, '|')) - 1;

 

----------------------------------------------------------------------------------------------------

Posted by 사용자 icodebroker
TAG

댓글을 달아 주세요