【发布时间】:2012-11-05 07:41:27
【问题描述】:
所以我一直在努力进行 FULLTEXT 索引搜索,之前有一个问题 here 已解决,但似乎对于某些搜索它可以正常工作,而在其他搜索中则不行
和以前一样,在游戏表中查找游戏,大约有 25k 行,在 g_name 上具有 FULLTEXT 索引。我还需要它使用自动完成功能,例如不完整的搜索词
使用搜索词,我将其分解,然后循环每次迭代,在末尾附加一个 *,例如 'grand* theft* auto* v*'
所以这里有一些示例搜索。它在顶部输出查询:
布尔模式关闭,结果正常
(链接失效)
BOOLEAN MODE 开启,结果未按预期返回
(链接失效)
布尔模式关闭,结果正常,但不确定“天诛:暗影刺客”的得分与其他“刺客信条”游戏的相关性如何?
(链接失效)
布尔模式开启,结果未显示“刺客信条 iii”
(链接失效)
自动补全部分单词,布尔模式关闭,没有结果?!
(链接失效)
自动补全部分单词,BOOLEAN MODE 关闭,结果正常
(链接失效)
不知道为什么打开/关闭布尔模式会产生如此奇怪的结果。就像我需要它来进行某些搜索而关闭其他搜索,但我需要一个搜索查询。分数似乎只是不知从何而来的 BS 数字。
此外,如果我开始在非可选单词的组合中添加“+”,它会产生更奇怪的结果。我添加全文的全部原因是为了让事情更灵活,并返回更有用的结果,但似乎让事情变得更糟。
所以我的问题,无论该特定搜索词/游戏的细微差别如何,以及它是部分搜索还是完整搜索,我如何让它每次都返回有用的结果。理想情况下类似于http://www.metacritic.com/ 的做法(右上角的搜索框)
【问题讨论】:
标签: mysql search full-text-search