최종 수정: 에
INITCAP
설명
INITCAP 함수는 문자열에 있는 각 단어의 첫 글자를 대문자로, 나머지 글자를 소문자로 변환합니다. 단어는 영숫자가 아닌 문자로 구분되는 영숫자의 연속으로 정의됩니다. 이 함수는 이름이나 제목의 형식을 정리하는 등 표준적인 대소문자 표기가 필요한 경우에 적합합니다.
구문
INITCAP(<str>)
매개변수
| 매개변수 | 설명 |
|---|---|
<str> | 대소문자 형식을 변환할 문자열입니다. 타입: VARCHAR |
반환값
변환된 문자열을 VARCHAR 타입으로 반환합니다.
변환 규칙:
- 각 단어의 첫 글자를 대문자로 변환합니다.
- 단어의 나머지 글자는 소문자로 변환합니다.
- 단어는 영숫자가 아닌 문자(공백, 문장 부호, 기호 등)로 구분됩니다.
- 숫자 문자는 대소문자 변환 대상이 아닙니다.
- Unicode 문자의 대소문자 변환을 지원합니다.
특수한 경우:
- 매개변수가 NULL이면 NULL을 반환합니다.
- 문자열이 비어 있으면 빈 문자열을 반환합니다.
- 영숫자가 아닌 문자가 연속되면 하나의 구분자로 처리합니다.
- 문자열의 첫 글자는 대문자로 변환합니다.
예제
- 기본적인 단어 첫 글자 대문자 변환
SELECT INITCAP('hello world');
+------------------------+
| INITCAP('hello world') |
+------------------------+
| Hello World |
+------------------------+
- 대소문자가 혼합된 문자열 변환
SELECT INITCAP('hELLo WoRLD');
+------------------------+
| INITCAP('hELLo WoRLD') |
+------------------------+
| Hello World |
+------------------------+
- NULL 값 처리
SELECT INITCAP(NULL);
+---------------+
| INITCAP(NULL) |
+---------------+
| NULL |
+---------------+
- 숫자와 기호가 포함된 문자열
SELECT INITCAP('hello hello.,HELLO123HELlo');
+---------------------------------------+
| INITCAP('hello hello.,HELLO123HELlo') |
+---------------------------------------+
| Hello Hello.,Hello123hello |
+---------------------------------------+