【发布时间】:2011-03-07 05:44:01
【问题描述】:
我有一个职业头衔数据库,我正在尝试对其进行一些查询。我正在使用 Match() 尝试使用以下 SQL 为用户输入的字符串找到最匹配的职业头衔:
SELECT *, MATCH (occupation_title) AGAINST ('EGG PROCESSOR')
AS score FROM occupational_titles WHERE MATCH (occupation_title)
AGAINST ('EGG PROCESSOR') ORDER BY score DESC;
当我对我的数据库运行此查询时,前三个结果是“处理器”、“鸡蛋处理器”和“COPRA 处理器”。前两个具有完全相同的匹配分数 6.04861688613892。为什么 MySQL 不会将精确匹配命中列为第一结果?我可以做些什么来改进搜索算法?
【问题讨论】:
标签: mysql full-text-search match