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

MySQL 테이블 열에서 문자열 일부를 교체하는 방법 – REPLACE() 함수 활용법

MySQL에서 문자열 일부를 교체하는 방법

MySQL 테이블의 특정 열에 저장된 문자열 중 일부를 다른 값으로 바꾸고 싶다면 REPLACE() 함수를 사용하면 됩니다. UPDATE 문과 함께 사용하면 기존 데이터를 손쉽게 수정할 수 있습니다.

기본 문법

update yourTableName set yourColumnName = REPLACE(yourColumnName ,'yourOldValue','yourNewValue');

위 문법에서 각 인자는 다음과 같은 의미를 가집니다.

  • yourTableName : 수정할 테이블 이름
  • yourColumnName : 값을 변경할 열(컬럼) 이름
  • yourOldValue : 교체 대상이 되는 기존 문자열
  • yourNewValue : 새로 대체될 문자열

예제 테이블 생성하기

먼저 실습용 테이블을 만들어 보겠습니다.

mysql> create table replacePartOfStringDemo
    -> (
    -> WebsiteURL varchar(100)
    -> );
Query OK, 0 rows affected (0.47 sec)

데이터 삽입하기

INSERT 명령을 사용해 테이블에 레코드를 추가합니다.

mysql> insert into replacePartOfStringDemo(WebsiteURL) values('www.mysqlQuestion.com');
Query OK, 1 row affected (0.14 sec)

저장된 데이터 확인하기

SELECT 문으로 테이블의 모든 레코드를 조회해 보겠습니다.

mysql> select * from replacePartOfStringDemo;

실행 결과는 다음과 같습니다.

+-----------------------+
| WebsiteURL            |
+-----------------------+
| www.mysqlQuestion.com |
+-----------------------+
1 row in set (0.00 sec)

REPLACE() 함수로 문자열 교체하기

이제 REPLACE() 함수를 사용해 열의 문자열 일부를 교체해 보겠습니다. 여기서는 URL의 "mysqlQuestion" 부분을 "mysql"로 변경합니다.

mysql> update replacePartOfStringDemo set
WebsiteURL=REPLACE(WebsiteURL,'www.mysqlQuestion.com','www.mysql.com');
Query OK, 1 row affected (0.20 sec)
Rows matched: 1 Changed: 1 Warnings: 0

쿼리 실행 결과 1개 행이 성공적으로 변경되었습니다.

변경 결과 확인하기

다시 SELECT 문으로 테이블을 조회하여 값이 제대로 바뀌었는지 확인합니다.

mysql> select * from replacePartOfStringDemo;

실행 결과는 다음과 같습니다.

+---------------+
| WebsiteURL    |
+---------------+
| www.mysql.com |
+---------------+
1 row in set (0.00 sec)

출력 결과를 보면 www.mysqlQuestion.comwww.mysql.com으로 성공적으로 교체된 것을 확인할 수 있습니다.

정리

MySQL에서 테이블 열의 문자열 일부를 교체하는 작업은 REPLACE() 함수 하나면 충분합니다. UPDATE 문과 결합하여 사용하며, 세 번째 인자에 새로운 값을 지정하는 것이 핵심입니다. 참고로 REPLACE() 함수는 대소문자를 구분하므로, 정확한 문자열을 지정해야 원하는 결과를 얻을 수 있습니다.