MySQL UPPER() 함수로 소문자를 대문자로 변환하기
MySQL에서는 내장 함수인 UPPER()를 사용하면 소문자 문자열을 간단하게 대문자로 변환할 수 있습니다. SELECT 문과 함께 사용하는 기본 문법은 다음과 같습니다.
SELECT UPPER('변환할_문자열');기본 사용 예제
다음은 소문자 문자열을 대문자로 변환하는 간단한 예제입니다.
mysql> select upper('john');실행 결과, 문자열이 대문자로 출력되는 것을 확인할 수 있습니다.
+---------------+
| upper('john') |
+---------------+
| JOHN |
+---------------+
1 row in set (0.00 sec)테이블의 기존 데이터를 대문자로 변경하기
이미 테이블에 소문자 값이 저장되어 있다면, UPDATE 명령어와 함께 UPPER() 함수를 사용하여 데이터를 일괄 변환할 수 있습니다. 문법은 다음과 같습니다.
UPDATE 테이블명 SET 컬럼명 = UPPER(컬럼명);
예제 테이블 생성하기
위 개념을 실제로 이해하기 위해 먼저 테이블을 생성하고 소문자 문자열 값을 삽입해 보겠습니다. 다음은 테이블을 생성하는 쿼리입니다.
mysql> create table UpperTableDemo
-> (
-> BookName longtext
-> );
Query OK, 0 rows affected (0.70 sec)데이터 삽입하기
INSERT 명령어를 사용해 테이블에 여러 레코드를 추가합니다.
mysql> insert into UpperTableDemo values('introduction to c');
Query OK, 1 row affected (0.13 sec)
mysql> insert into UpperTableDemo values('introduction to java');
Query OK, 1 row affected (0.18 sec)
mysql> insert into UpperTableDemo values('introduction to python');
Query OK, 1 row affected (0.11 sec)
mysql> insert into UpperTableDemo values('introduction to c#');
Query OK, 1 row affected (0.17 sec)저장된 데이터 확인하기
SELECT 문으로 테이블의 모든 레코드를 조회합니다.
mysql> select *from UpperTableDemo;
현재까지 저장된 데이터는 모두 소문자로 되어 있습니다.
+------------------------+ | BookName | +------------------------+ | introduction to c | | introduction to java | | introduction to python | | introduction to c# | +------------------------+ 4 rows in set (0.00 sec)
UPDATE 문으로 전체 데이터 대문자 변환하기
이제 UPPER() 함수를 적용한 UPDATE 쿼리를 실행하여 BookName 컬럼의 모든 값을 대문자로 변경합니다.
mysql> update UpperTableDemo set BookName = upper(BookName); Query OK, 4 rows affected (0.16 sec) Rows matched: 4 Changed: 4 Warnings: 0
업데이트가 완료되면 다시 한번 전체 레코드를 조회하여 결과를 확인합니다.
mysql> select *from UpperTableDemo;
모든 책 이름이 대문자로 성공적으로 변환된 것을 확인할 수 있습니다.
+------------------------+ | BookName | +------------------------+ | INTRODUCTION TO C | | INTRODUCTION TO JAVA | | INTRODUCTION TO PYTHON | | INTRODUCTION TO C# | +------------------------+ 4 rows in set (0.00 sec)
정리
MySQL의 UPPER() 함수는 단일 문자열 변환부터 테이블 전체 데이터의 대소문자 일괄 변경까지 폭넓게 활용할 수 있는 유용한 함수입니다. 반대로 대문자를 소문자로 변환하고 싶다면 LOWER() 함수를 사용하면 됩니다. 데이터 정규화나 검색 조건 통일 등 실무에서도 자주 사용되므로 꼭 익혀두시기 바랍니다.