是否可以使用忽略重音的“=”或“like”操作来执行 MySQL 查询?
例子:
select * from address where name like "Rua Tabapua"
返回
Rua Tabapuá Rua Tabapuã Rua Tabapuà
等等...
是否可以在不使用 find_by_sql 的情况下使用 Ruby on Rails ActiveRecord API 来做到这一点?
谢谢,
鲁本
是否可以使用忽略重音的“=”或“like”操作来执行 MySQL 查询?
例子:
select * from address where name like "Rua Tabapua"
返回
Rua Tabapuá Rua Tabapuã Rua Tabapuà
等等...
是否可以在不使用 find_by_sql 的情况下使用 Ruby on Rails ActiveRecord API 来做到这一点?
谢谢,
鲁本
即使在 MySQL 中可能有一些方法可以做到这一点,如果你想做全文搜索,也许使用像 Sphinx 和 Thinking Sphinx 这样的全文索引引擎会更容易。
通过 Sphinx 进行索引时,您可以对其进行配置,使其忽略重音字符等...
您可以通过使用 UTF-8 和类似查询来做到这一点
这听起来像是一个mysql配置问题。完成此查询后检查 mysql.log 文件。你会看到查询是按照你的意愿进行的,但是 mysql 返回的结果比你预期的要多。在 mysql 控制台中尝试查询,你会看到同样的事情发生。
所有这些都在 Ruby on Rails 的下一层。