Computer >> 컴퓨터 >  >> 프로그래밍 >> MySQL

MySQL TRIM() 함수로 문자열의 접두사·접미사 한 번에 제거하는 방법

MySQL TRIM() 함수란?

MySQL의 TRIM() 함수는 문자열에서 특정 접두사(앞부분)나 접미사(뒷부분), 또는 양쪽 모두를 제거할 때 사용하는 함수입니다. 데이터 정리 작업에서 불필요한 공백이나 특정 문자 패턴을 손쉽게 없앨 수 있어 매우 유용하게 활용됩니다.

기본 문법

TRIM([{BOTH | LEADING | TRAILING} [str_to_remove] FROM] string)

인자 설명

  • BOTH : 문자열의 왼쪽과 오른쪽 양쪽에서 지정한 문자열을 모두 제거합니다.
  • LEADING : 문자열 앞쪽(선행)에 있는 문자만 제거합니다.
  • TRAILING : 문자열 뒤쪽(후행)에 있는 문자만 제거합니다.
  • str_to_remove : 제거하고자 하는 대상 문자열을 의미합니다.
  • string : 문자가 제거될 원본 문자열을 의미합니다.

사용 예제

아래 예제들을 통해 TRIM() 함수의 동작 방식을 확인할 수 있습니다.

1. 양쪽(BOTH)에서 특정 문자 제거

mysql> Select TRIM(BOTH '0' FROM '0100');
+----------------------------+
| TRIM(BOTH '0' FROM '0100') |
+----------------------------+
| 1                          |
+----------------------------+
1 row in set (0.00 sec)

mysql> Select TRIM(BOTH 'AB' FROM 'ABCDAB');
+-------------------------------+
| TRIM(BOTH 'AB' FROM 'ABCDAB') |
+-------------------------------+
| CD                            |
+-------------------------------+
1 row in set (0.00 sec)

'0100'에서 '0'을 양쪽에서 제거하면 '1'이 되고, 'ABCDAB'에서 'AB'를 양쪽에서 제거하면 'CD'만 남는 것을 볼 수 있습니다.

2. 뒤쪽(TRAILING)에서만 제거

mysql> Select TRIM(Trailing 'AB' FROM 'ABCDAB');
+-----------------------------------+
| TRIM(Trailing 'AB' FROM 'ABCDAB') |
+-----------------------------------+
| ABCD                              |
+-----------------------------------+
1 row in set (0.00 sec)

TRAILING 옵션을 사용하면 문자열 끝에 있는 'AB'만 제거되어 'ABCD'가 결과로 반환됩니다.

3. 앞쪽(LEADING)에서만 제거

mysql> Select TRIM(Leading 'AB' FROM 'ABCDAB');
+----------------------------------+
| TRIM(Leading 'AB' FROM 'ABCDAB') |
+----------------------------------+
| CDAB                             |
+----------------------------------+
1 row in set (0.00 sec)

LEADING 옵션은 문자열 시작 부분의 'AB'만 제거하므로 결과값은 'CDAB'가 됩니다.

정리

TRIM() 함수는 BOTH, LEADING, TRAILING 옵션을 조합하여 문자열의 앞, 뒤 또는 양쪽에서 원하는 문자를 간편하게 제거할 수 있습니다. 인자를 생략하면 기본적으로 공백이 제거되므로, 일반적인 데이터 클렌징 작업에도 널리 활용됩니다.