Последнее обновление
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 |
+---------------------------------------+