Как я могу сделать это в Mysql с помощью SQL-запроса?
Если вам нужно указать только те несколько символов, которые обычно используются в турецком языке, тогда вы можете просто использовать (отвратительный)string replace:
SELECT
REPLACE(REPLACE(
REPLACE(REPLACE(
REPLACE(REPLACE(
REPLACE(REPLACE(
REPLACE(REPLACE(
REPLACE(REPLACE(
name,
'İ', 'I'), 'ı' 'i'),
'Ö', 'O'), 'ö', 'o'),
'Ü', 'U'), 'ü', 'u'),
'Ç', 'C'), 'ç', 'c'),
'Ğ', 'G'), 'ğ', 'g'),
'Ş', 'S'), 'ş', 's')
AS name
FROM users
WHERE id=1
Вы можете поместить это в хранимую процедуру, если хотите, но на самом деле вам, вероятно, лучше делать это на надлежащем языке программирования (сценариях) вне базы данных.Вы получите лучшие инструменты для замены / перевода строк и более общие решения, чем эта.
Например, удаление диакритических знаков довольно легко с помощью нормализации Unicode.Транслитерация в целом - сложная и потенциально специфичная для языка задача, которая может быть слишком сложной для уровня базы данных.