반응형
MYSQL을 및 대부분의 DBMS에서 특정 문자를 치환하거나 공백 또는 삭제를 하는 경우 REPLACE() 함수를 사용합니다. 또한, REPLACE() 함수를 여러 개 겹쳐서 사용할 경우 한 번에 여러 문자열을 원하는 문자열로 바꿀 수 있을 뿐만 아니라 개행 제거, 공백 제거 등 다양한 케이스에 활용할 수 있습니다.
REPLACE 사용 방법
REPLACE() 함수는 특정 문자열을 치환하거나 중첩하여 사용할 수 있습니다.
1) 기본 문법
- SELECT REPLACE(문자열, 대상문자, 치환문자);
- SELECT REPLACE(REPLACE(문자열, 대상문자, 치환문자), 대상문자2, 치환문자2);
2) 예시
# 일반 사용
SELECT REPLACE('DATABASE MYSQL ORACLE MSSQL', 'MS', 'MY');
-> DATABASE MYSQL ORACLE MYSQL
# 중첩 사용
SELECT REPLACE(REPLACE('DATABASE MYSQL ORACLE MSSQL', 'MS', 'MY'), 'ORACLE', 'MYSQL');
-> DATABASE MYSQL MYSQL MYSQL
REPLACE 자주 사용하는 예시
1) 탭 제거 : CHAR(9), '\t'
SELECT REPLACE('MYSQL DB', CHAR(9), '');
-> MYSQLDB
SELECT REPLACE('MYSQL DB', '\t', '');
-> MYSQLDB
2) 개행 제거 : '\r\n'
SELECT REPLACE('MYSQL
DB', '\r\n', '');
-> MYSQLDB
3) 라인피드 제거 : CHAR(10)
SELECT REPLACE('MYSQL DB', CHAR(10), '');
-> MYSQL DB
4) 캐리지 리턴 제거 : CHAR(13)
SELECT('MYSQL DB', CHAR(13), '');
-> MYSQL DB
5) 탭 + 라인피드 + 캐리지 리턴 중첩 제거
SELECT REPLACE(REPLACE(REPLACE('MYSQL DB', CHAR(9), ''), CHAR(10), ''), CHAR(13), '');
-> MYSQLDB
반응형
'IT > MYSQL' 카테고리의 다른 글
MYSQL - GROUP BY HAVING 절 사용하기 (0) | 2023.03.11 |
---|---|
MYSQL - 문자를 숫자로, 숫자를 문자로 치환하기(CAST) (0) | 2023.03.10 |
MYSQL - 알파벳 대소문자와 공백 제거하기(UPPER, LOWER, TRIM) (0) | 2023.03.08 |
MYSQL - SUBSTRING, LEFT, RIGHT 문자열 자르기 함수 사용 방법 (0) | 2023.03.06 |
MYSQL - LIKE문으로 특정 문자 포함된 결과 조회하기 (0) | 2023.03.05 |
댓글