Игнорирование акцентуации в запросе MySQL с использованием Ruby on Rails - PullRequest
2 голосов
/ 05 ноября 2010

Можно ли выполнить запрос MySQL, используя "=" или "подобные" операции, которые игнорируют акцентуацию?

Пример:

select * from address where name like "Rua Tabapua"

возвращает

Руа Табапуа Руа Табапуа Руа Табапуа

и тд ...

Можно ли сделать это с помощью API Active Directory Ruby on Rails без использования find_by_sql?

Спасибо

Rubem

Ответы [ 3 ]

1 голос
/ 05 ноября 2010

Даже если, возможно, есть какие-то способы сделать это в MySQL, если вы хотите выполнить полнотекстовый поиск, возможно, будет проще использовать механизм полнотекстового индексирования, такой как Sphinx и Thinking Sphinx.

При индексировании через Sphinx вы можете настроить его так, чтобы он игнорировал акцентированные символы и т. Д. *

0 голосов
/ 08 августа 2012

Вы можете сделать это, используя UTF-8 и подобные запросы

0 голосов
/ 05 ноября 2010

Это звучит как вопрос конфигурации mysql. Проверьте файл mysql.log, когда этот запрос будет выполнен. Вы увидите, что запрос сделан так, как вы хотите, но mysql возвращает больше результатов, чем вы ожидаете. Попробуйте запрос в консоли MySQL, и вы увидите, что происходит то же самое.

И все это в слое ниже Ruby on Rails.

...