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

时间:2012-07-10 04:44:14

标签: mysql full-text-search

我在现有表的两个字段(标题,描述)上应用了全文索引。该表已有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

这只是一个例子。

请提前帮助谢谢......

另一个问题:有没有办法比其他(des)更优先考虑一个领域(山雀)?

1 个答案:

答案 0 :(得分:0)

试试这个::

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