특정 문자 지우기(TRIM, LTRIM, RTRIM)
특정문자를 지우고 싶을때는 TRIM, LTRIM, RTRIM 함수를 사용하시면 됩니다.
1. TRIM 함수
TRIM( [삭제 옵션], [삭제할 문자] FROM 문자열 )
삭제 옵션에는 왼쪽 글자를 지우는 LEADING, 오른쪽 글자를 지우는 TRAILING, 양쪽 글자를 지우는 BOTH 가 있이며,
생략시에는 양쪽 값이 모두 삭제됩니다.
이때, 삭제할 문자는 필수가 아니며, 삭제할 문자를 지정하지 않으면 공백을 지웁니다.
SELECT '[' || ' LOVE YOU ' || ']' AS ORIGINAL,
'[' || TRIM (' LOVE YOU ') || ']' AS TRIM,
'[' || TRIM (LEADING FROM ' LOVE YOU ') || ']' AS TRIM_L,
'[' || TRIM (TRAILING FROM ' LOVE YOU ') || ']' AS TRIM_T,
'[' || TRIM (BOTH FROM ' LOVE YOU ') || ']' AS TRIM_B
FROM DUAL;
이번에는 삭제할 문자열이 있는 경우를 살펴 봅시다.
SELECT '[' || '***LOVE***YOU***' || ']' AS ORIGINAL,
'[' || TRIM ('*' FROM '***LOVE***YOU***') || ']' AS TRIM,
'[' || TRIM (LEADING '*' FROM '***LOVE***YOU***') || ']' AS TRIM_L,
'[' || TRIM (TRAILING '*' FROM '***LOVE***YOU***') || ']' AS TRIM_T,
'[' || TRIM (BOTH '*' FROM '***LOVE***YOU***') || ']' AS TRIM_B
FROM DUAL;
2. LTRIM, RTRIM 함수
TRIM 함수 이외에 LTRIM, RTRIM 함수를 사용에 대한 예제도 살펴 봅시다.
LTRIM( 원본 문자열 데이터, [삭제할 문자 또는 문자열] )
RTRIM(원본 문자열 데이터, [삭제할 문자 또는 문자열] )
LTRIM, RTRIM 함수는 각각 왼쪽, 오른쪽의 지정 문자 또는 문자열을 삭제할 때 사용합니다. 삭제할 문자 또는 문자열을 지정하지 않으면 공백 문자를 삭제합니다.
SELECT '[' || ' LOVE YOU ' || ']' AS ORIGINAL,
'[' || TRIM (' LOVE YOU ') || ']' AS TRIM,
'[' || LTRIM (' LOVE YOU ') || ']' AS LTRIM,
'[' || RTRIM (' LOVE YOU ') || ']' AS RTRIM
FROM DUAL;
공백이 아닌 문자열이 있는 경우를 예제로 살펴 봅시다.
SELECT '[' || '*_*LOVE*_*YOU*_*' || ']' AS ORIGINAL,
'[' || TRIM ('*_*LOVE*_*YOU*_*') || ']' AS TRIM,
'[' || LTRIM ('*_*LOVE*_*YOU*_*', '*_') || ']' AS LTRIM,
'[' || RTRIM ('*_*LOVE*_*YOU*_*', '*_') || ']' AS RTRIM
FROM DUAL;
실무에서는 데이터를 저장할때 저장할 데이터 앞이나, 끝에 의미 없는 공백을 제거하고 저장 한다거나, Login시 사용자의 실수로 입력된 공백이 있을 수 있어 이를 제거하고 비교할때 사용 됩니다.
※ 예제로 사용된 TABLE의 정보는 'SCOTT 계정 예제 Table(emp, dept, salgrade)'을 참고하시면 됩니다.
'DataBase' 카테고리의 다른 글
[Oracle] 숫자 함수 - 특정 위치에서 버리는 함수(TRUNC) (0) | 2025.08.10 |
---|---|
[Oracle] 숫자 함수 - 특정 위치에서 반올림 함수(ROUND) (0) | 2025.08.09 |
[Oracle] 숫자 함수 - 나머지를 구하는 함수(MOD) (3) | 2025.08.08 |
[Oracle] 문자 함수 - 두 문자열 데이터 합치기(CONCAT) (1) | 2025.08.07 |
[Oracle] 문자 함수 - 공백을 특정 문자로 채우기(LPAD, RPAD) (0) | 2025.08.06 |