728x90
DB를 관리하다 보면 특정 문자를 다른 문자로 변경해야 할 때가 있습니다. 이럴 때 REPLACE 함수를 자주 사용합니다.
REPLACE 함수란?
REPLACE 함수는 문자열 내에서 특정 문자를 다른 문자로 변경하는 기능을 합니다.
- 원본 문자열: 변경 전 원본 문자열입니다.
- 찾을 문자열: 원본 내 대상 문자열입니다.
- 교체 문자열: 새로 변경할 문자열입니다.
사용방법
REPLACE('원본 문자열', '찾을 문자열', '교체 문자열') 또는
REPLACE('컬럼', '찾을 문자열', '교체 문자열')
단순 문자열 교체
SELECT REPLACE('samsodb mysql', 'mysql', 'MariaDB');
'samsodb mysql' 이라는 문자열에서 'mysql' 을 'MariaDB' 로 변경해서 보여주는 SQL입니다.
테이블 데이터 수정
UPDATE customers SET phone = REPLACE(phone, '-', '');
customers 테이블의 phone 컬럼에서 모든 하이픈 ( '-' ) 을 제거하는 SQL입니다.
왜 REPLACE 함수를 사용하는가?
- 데이터 입력 시 오타나 잘못된 데이터를 수정할 때
- 특정 패턴을 다른 패턴으로 변환해야 할 때
- 데이터 포맷을 일관성 있게 유지해야 할 때
REPLACE 함수와 함께 사용하면 좋은 함수
CONCAT 함수와 결합
SELECT CONCAT(REPLACE(first_name, 'sam', 'SAM'), '', REPLACE(last_name, 'so', 'SO')) AS full_name
FROM user;
user 테이블의 first_name, last_name의 값을 변경하여 full_name으로 합치는 SQL입니다.
LENGTH 함수와 결합
SELECT REPLACE('samso good 1', ' ', '') AS no_spaces, LENGTH(REPLACE('samso good 1', ' ', '')) AS length
'samso good 1'이라는 문자열에 공백을 다 제거한 값을 no_spaces에 넣고 글자수를 length에 보여주는 SQL입니다.
728x90
반응형
'DB > Mysql(MariaDB)' 카테고리의 다른 글
MariaDB - AUTO_INCREMENT 확인 및 초기화 방법 (0) | 2024.05.31 |
---|---|
MariaDB - Connection Memory Management와 주요 메모리 파라미터 튜닝 (0) | 2024.05.31 |
MariaDB - max_connections 변경하기 (0) | 2024.05.08 |
MariaDB - DB 로그 파일 관리하기 (0) | 2024.05.03 |
MariaDB - DB 백업 및 복구하기 (0) | 2023.05.25 |