REGEXP_SUBSTR 이란?
SUBSTR 함수의 기능의 확장. 구분자를 기준으로 Split.
오라클 10g 이상에서 사용이 가능.
형식
REGEXP_SUBSTR (source_char, pattern [, position [, occurrence [, match_param [subxpr]]]]) | cs |
- source_char : 문자열.
- position : 오라클이 문자열에서 특정 문자를 어디에서 찾아야 하는지 위치를 나타냄. 기본으로 1로 설정되어 있으므로, 문자열의 처음부터 검색을 시작.
- occurrence : source_char 에 pattern 이 발생한 횟수도 디폴트는 1.
- match_parameter : 디폴트 매칭을 변경할 때 사용.
예제
SELECT TRIM(REGEXP_SUBSTR(REPLACE(RESULT, '|', '| '), '[^|]+', 1, 1)) AS idx1, TRIM(REGEXP_SUBSTR(REPLACE(RESULT, '|', '| '), '[^|]+', 1, 2)) AS idx2, TRIM(REGEXP_SUBSTR(REPLACE(RESULT, '|', '| '), '[^|]+', 1, 3)) AS idx3, TRIM(REGEXP_SUBSTR(REPLACE(RESULT, '|', '| '), '[^|]+', 1, 4)) AS idx4 FROM ( SELECT '|A|B|C|D|' RESULT FROM dual ); | cs |
- '[^|]+' 문자패턴을 의미
- (1, 1), (1, 2)...는 첫 번째부터 탐색하여 *번째 만나는 문자열을 반환하라는 의미.
'STUDY > SQL' 카테고리의 다른 글
LTRIM, RTRIM, TRIM (0) | 2018.02.23 |
---|---|
REPLACE (0) | 2018.02.23 |
SYS_CONNECT_BY_PATH (0) | 2018.02.22 |
MySQL DATE 날짜 형식 바꾸기 (0) | 2018.01.31 |
오라클통계쿼리 (0) | 2018.01.23 |