【发布时间】: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