【发布时间】:2013-01-24 07:57:05
【问题描述】:
我目前正在为网站开发搜索功能。用户按名称搜索其他用户。对于名字带有口音的用户,我很难获得好的结果。
我在 name 列上有一个 FULLTEXT 索引,表的排序规则是 utf8_general_ci。
目前,如果有人注册了该站点,并且有一个带重音符号的名称(例如:Alberto Andrés),则该名称将存储在 DB 中,如下图所示:
因此,如果我执行以下查询SELECT * MATCH(name) AGAINST('alberto andres'),我会得到很多匹配分数更高的结果,例如“Alberto”、“Andres”、“Andrés”,最后匹配分数较低的用户可能正在寻找的记录“阿尔贝托·安德烈斯。
我可以做些什么来考虑重音记录当前在数据库中的存储方式?
谢谢!
【问题讨论】:
标签: php mysql utf-8 full-text-search diacritics