В PostgreSQL есть три функции для изменения регистра символов строки:
lower
- преобразование символов в нижний регистр;upper
- преобразование символов в верхний регистр;initcap
- преобразование первого символа каждого слова в верхний регистр, а остальных в нижний.
SELECT lower('Мама мыла РАМУ')
# | lower |
---|---|
1 | мама мыла раму |
SELECT upper('Мама мыла РАМУ')
# | upper |
---|---|
1 | МАМА МЫЛА РАМУ |
SELECT initcap('Мама мыла РАМУ')
# | initcap |
---|---|
1 | Мама Мыла Раму |
С lower
и upper
все предельно просто. Давай еще поразбираемся с initcap
. Словами в initcap
считаются последовательности алфавитно-цифровых символов, разделённые любыми другими символами. Слова начинаются с буквы.
Выполним еще несколько запросов:
SELECT initcap('Раз, два, три')
# | initcap |
---|---|
1 | Раз, Два, Три |
Разделим слова другими символами
SELECT initcap('Раз-два#три')
# | initcap |
---|---|
1 | Раз-Два#Три |
А если использовать цифры?
SELECT initcap('1раз два3три')
# | initcap |
---|---|
1 | 1Раз Два3три |
Слово должно начинаться с буквы.