在现有的mysql表上应用全文索引



我已经对现有表的两个字段(title、description)应用了全文索引。这个表已经有7000-8000条记录。

搜索未按预期进行。即使我在搜索字段中提供了完整的标题,但我无法在顶部获得该记录,还有一些不相关的记录。

添加全文索引后,是否需要重新插入表中的所有记录?或者问题出在哪里?

以下是查询供参考:

SELECT * FROM f_table f WHERE MATCH (f.tit, f.des) AGAINST ('Rasta Man Vocal 4')

它没有显示这张"Rasta Man Vocal 4"的最高纪录。它在4号位。以下是前四条记录的详细信息:

#  (tit)                (des)
---------------------------------------------------------------------------------
1) Rasta Vocal 1.wav    Male Rasta Vocal-Tune into the King
2) Rasta Jah DnB        Rasta Increase Come from Jah DnB Vocal Reggae
3) Rasta Man Vocal 2    Rasta Man Vocal 2 Download
4) Rasta Man Vocal 4    Rasta Man Vocal 4 Download

这只是一个例子。

请帮忙,提前谢谢。。。

另一个问题是:有没有办法比其他领域更倾向于一个领域(tit)?

试试这个::

SELECT *,MATCH (f.tit, f.des) AGAINST ('Rasta Man Vocal 4') as relevance  FROM f_table f WHERE MATCH (f.tit, f.des) AGAINST ('Rasta Man Vocal 4') order by relevance desc

最新更新