MySQL에서 저장된 데이터에 백분율(%) 기호가 포함되어 있어 숫자로만 활용하고 싶은 경우가 종종 있습니다. 이럴 때는 REPLACE() 함수를 사용하면 간단하게 해결할 수 있습니다. 이번 글에서는 예제 테이블을 만들고, UPDATE 문과 REPLACE 함수를 활용해 값에서 % 기호만 제거하는 과정을 단계별로 살펴보겠습니다.
1. 예제 테이블 생성
먼저 고객 이름과 이자율을 저장할 테이블을 생성합니다.
mysql> create table DemoTable828( CustomerName varchar(100), InterestRate varchar(100) ); Query OK, 0 rows affected (0.50 sec)
2. 샘플 데이터 삽입
INSERT 명령을 사용하여 % 기호가 포함된 이자율 데이터를 입력합니다.
mysql> insert into DemoTable828 values('Chris','10%');
Query OK, 1 row affected (0.60 sec)
mysql> insert into DemoTable828 values('Robert','11.5%');
Query OK, 1 row affected (0.11 sec)
mysql> insert into DemoTable828 values('David','15.90%');
Query OK, 1 row affected (0.22 sec)
mysql> insert into DemoTable828 values('Bob','20%');
Query OK, 1 row affected (0.16 sec)3. 현재 데이터 확인
SELECT 문으로 테이블의 전체 레코드를 조회해 보겠습니다.
mysql> select *from DemoTable828;
실행 결과는 다음과 같습니다.
+--------------+--------------+ | CustomerName | InterestRate | +--------------+--------------+ | Chris | 10% | | Robert | 11.5% | | David | 15.90% | | Bob | 20% | +--------------+--------------+ 4 rows in set (0.00 sec)
4. REPLACE() 함수로 % 기호 제거하기
MySQL 테이블의 값에서 백분율 기호를 제거하는 핵심 쿼리는 다음과 같습니다.
mysql> update DemoTable828 set InterestRate=replace(InterestRate,'%',''); Query OK, 4 rows affected (0.18 sec) Rows matched: 4 Changed: 4 Warnings: 0
REPLACE(문자열, 찾을_문자, 바꿀_문자) 형태로 사용하며, 위 쿼리는 InterestRate 컬럼의 모든 값에서 '%' 문자를 빈 문자열('')로 치환합니다. 즉, % 기호만 깔끔하게 삭제되고 숫자 부분은 그대로 유지됩니다.
참고: REPLACE 함수는 해당 컬럼의 모든 행에 일괄 적용되므로, 특정 조건의 행만 수정하려면 WHERE 절을 함께 사용하는 것이 좋습니다. 또한 향후 수치 연산이 필요하다면 컬럼 타입을 DECIMAL 등 숫자형으로 변경하는 것도 고려해 볼 수 있습니다.
5. 변경 결과 확인
업데이트 후 테이블의 레코드를 다시 한번 조회해 보겠습니다.
mysql> select *from DemoTable828;
% 기호가 성공적으로 제거된 것을 확인할 수 있습니다.
+--------------+--------------+ | CustomerName | InterestRate | +--------------+--------------+ | Chris | 10 | | Robert | 11.5 | | David | 15.90 | | Bob | 20 | +--------------+--------------+ 4 rows in set (0.00 sec)
마무리
이처럼 MySQL에서는 UPDATE 문과 REPLACE() 함수를 조합하면 별도의 외부 스크립트 없이도 컬럼 값에서 특정 문자(예: % 기호)를 손쉽게 제거할 수 있습니다. 데이터 정제나 마이그레이션 작업 시 유용하게 활용해 보시기 바랍니다.