Всем доброго времени суток,
У меня проблема, с которой я застрял на несколько дней .. Я пытаюсь найти хороший способ выполнить запрос без акцента с помощью mysql.
Пример: я получил в своей базе данных строку с полем title
со значением «Café» .. Теперь я хочу, чтобы люди могли искать «cafe» без необходимости специально добавлять é .. Думал, что это не должно быть так сложно ... поскольку у большинства есть римский эквивалент (по крайней мере, на языке, для которого я его использую).
Я где-то читал, что есть новая версия mysql, у которой есть сопоставление, которое делает это автоматически .. Конечно, я считаю, что это не так просто обновить до этого ... поэтому я должен попытаться достичь этого в версии 5 .. Также я читал, что люди использовали второй столбец для хранения значения, доступного для поиска ... Но в конечном итоге я хочу, чтобы он мог выполнять поиск по целым текстам ... поэтому я бы предпочел избежать этого ...
Итак, это что у меня есть до сих пор .. сортировка БД - latin1_swedish_ci (не идеально, я знаю .. был настроен так)
И это то, что я получил от поиска до сих пор ...
SET NAMES utf8 COLLATE utf8_unicode_ci;
SELECT `title` as accented, (CONVERT (CAST(`title` as BINARY) USING utf8)) as notaccented, `id` FROM `places_copy` WHERE `title` LIKE '%cafe%'
Надеюсь, кто-то сможет пролить свет на мою проблему , Спасибо! :) Если нужна дополнительная информация, скажите:)