MySQL에서 기존 int 열의 값에 문자를 추가하려면 CONCAT() 함수를 사용하면 됩니다. CONCAT()은 여러 문자열이나 값을 하나로 연결해 주는 함수로, 숫자 값 앞뒤에 원하는 텍스트를 붙일 때 매우 유용합니다.
1. 샘플 테이블 생성
먼저 예제에 사용할 테이블을 생성합니다.
mysql> create table DemoTable
(
Amount int
);
Query OK, 0 rows affected (1.44 sec)2. 데이터 삽입
INSERT 명령을 사용하여 몇 개의 레코드를 삽입합니다.
mysql> insert into DemoTable values(709); Query OK, 1 row affected (0.67 sec) mysql> insert into DemoTable values(34560); Query OK, 1 row affected (0.30 sec) mysql> insert into DemoTable values(90854); Query OK, 1 row affected (0.28 sec) mysql> insert into DemoTable values(3456); Query OK, 1 row affected (0.15 sec)
3. 저장된 데이터 확인
SELECT 문을 사용하여 테이블의 모든 레코드를 조회합니다.
mysql> select *from DemoTable;
위 쿼리를 실행하면 다음과 같은 결과가 출력됩니다.
+--------+ | Amount | +--------+ | 709 | | 34560 | | 90854 | | 3456 | +--------+ 4 rows in set (0.00 sec)
4. CONCAT()으로 문자 추가하기
이제 열 값에 문자를 추가하는 쿼리입니다. CONCAT() 함수 안에 원하는 문자열과 열 이름을 함께 지정하면 됩니다.
mysql> select concat('The Product Amount is=',Amount) AS AddingCharacters from DemoTable;실행 결과는 다음과 같습니다.
+-----------------------------+ | AddingCharacters | +-----------------------------+ | The Product Amount is=709 | | The Product Amount is=34560 | | The Product Amount is=90854 | | The Product Amount is=3456 | +-----------------------------+ 4 rows in set (0.00 sec)
정리
위 예시에서 볼 수 있듯이, CONCAT() 함수를 사용하면 int 타입의 숫자 값 앞에 문자열을 손쉽게 연결할 수 있습니다. 이 방식은 실제 저장된 데이터는 변경하지 않고 조회 시점에만 형식을 변환해 보여주기 때문에, 원본 데이터의 무결성을 유지하면서 원하는 출력 형식을 만들 때 유용합니다. 참고로 CONCAT()에서 인수 중 하나라도 NULL이면 결과가 NULL이 되므로, NULL 처리가 필요한 경우 IFNULL() 또는 COALESCE() 함수와 함께 사용하는 것이 좋습니다.