연속된 공백을 하나의 공백으로 변경해보자.
10.1 이전 버전은 아래와 같이 REPLACE 함수를 3번 사용해야 한다.
-- 1 SELECT REPLACE (c1, ' ', '! ') AS c1 , REPLACE (REPLACE (c1, ' ', '! '), ' !') AS c2 , REPLACE (REPLACE (REPLACE (c1, ' ', '! '), ' !'), '!') AS c3 FROM (SELECT '1 2 3 4 5 ' AS c1 FROM DUAL); C1 C2 C3 ----------------------------------- --------------- ---------- 1! 2! ! 3! ! ! 4! ! ! ! 5! ! ! ! ! 1! 2! 3! 4! 5! 1 2 3 4 5 1개의 행이 선택되었습니다.
10.1 버전부터 REGEXP_REPLACE 함수를 사용할 수 있다.
-- 2 SELECT REGEXP_REPLACE ('1 2 3 4 5 ', ' +', ' ') AS c1 FROM DUAL; C1 ---------- 1 2 3 4 5 1개의 행이 선택되었습니다.
'Oracle > SQL' 카테고리의 다른 글
주민등록번호 마스킹 (0) | 2012.04.30 |
---|---|
다중 행을 문자열로 집계 (0) | 2012.04.16 |
구분자 포함 값을 행으로 분리 (0) | 2012.04.13 |
연속 상승 구간 조회 (0) | 2012.04.10 |
점 이력을 선분 이력으로 전환 (0) | 2012.04.09 |