【问题标题】:Why doesn't the FullText search find it?为什么全文搜索找不到?
【发布时间】:2012-06-08 00:14:49
【问题描述】:

我需要一个在 MySql 数据库上工作的搜索引擎, 而且我在列上有 FULLTEXT 索引,但出于某种原因 - 有时他会找到我要他的东西,有时他没有 - 我真的不明白为什么。

例如,我在 MyIsam songs 表中有一个 name 列,它索引了 FULLTEXT。

我有这些记录:

亲爱的孩子,别哭

当我做这个查询时:

$query = $msi->query("SELECT `name` FROM songs WHERE MATCH(`name`) AGAINST ('Mine') ");
while($fetch = $query->fetch_assoc())
echo $fetch['name']."<br />";

它找到了。

但是当我这样做时:

$query = $msi->query("SELECT `name` FROM songs WHERE MATCH(`name`) AGAINST ('Dont') "); // or 'don\'t' , 'dont cry' , 'Don\'t Cry' , etc..
while($fetch = $query->fetch_assoc())
echo $fetch['name']."<br />";

没有。

我真的不明白为什么.. 另一个例子是我在同一张表上有另一个artist 列,它有一条记录-'Sia'。 即使我进行查询以查找 'Sia' ,它也不起作用! 有人可以解释一下为什么吗?? (这不是因为最小长度 - 我使用 in_boolean_mode)

顺便说一句,我使用 wampserver,所以我认为这可能与他们的 MySql 没有更新到它的最新版本或类似的东西有关..

请帮忙!我很绝望.. :(

【问题讨论】:

    标签: php mysql search wampserver full-text-search


    【解决方案1】:

    Dont 是停用词

    您应该编辑停用词列表

    【讨论】:

    • “您应该编辑停用词列表” - 我在哪里可以这样做? :D
    猜你喜欢
    • 2012-01-10
    • 2013-04-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-09-04
    • 2022-01-08
    相关资源
    最近更新 更多