У меня есть существующая таблица 'people_table' с полем full_name
.
Многим записям заполнили 'full_name' поле с неправильным преобразованием регистра. например. 'fred Jones'
или 'fred jones'
или 'Fred jones'
.
Я могу найти эти ошибочные записи с:
SELECT * FROM people_table WHERE full_name REGEXP BINARY '^[a-z]';
Как я могу использовать для своей выгоды первую букву каждого найденного слова? например. 'fred jones'
становится 'Fred Jones'
.
Для этого нет функции MySQL, вам нужно написать свою собственную. По следующей ссылке есть реализация:
http://joezack.com/index.php/2008/10/20/mysql-capitalize-function/
Чтобы использовать его, сначала вам нужно создать функция в базе данных. Вы можете сделать это, например, с помощью MySQL Query Browser (щелкните правой кнопкой мыши имя базы данных и выберите «Создать новую функцию»).
После создания функции вы можете обновить значения в таблице с помощью следующего запроса:
UPDATE users SET name = CAP_FIRST(name);