首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >MySQL全文自动完成搜索问题

MySQL全文自动完成搜索问题
EN

Stack Overflow用户
提问于 2012-11-16 14:53:23
回答 1查看 1.3K关注 0票数 2

因此,我一直在为全文索引搜索而挣扎,之前有一个问题here已经解决了,但是对于某些搜索,它似乎工作正常,而在另一些搜索中,则没有。

和以前一样,在游戏表中查找游戏,大约有25k行,g_name上有全文索引。我也需要它来使用自动完成(如不完整的搜索词)。

使用搜索项,我引爆它,然后循环每一次迭代,在结尾加上一个*,例如'grand*小偷*汽车* v*‘

这是一些样本搜索。它在顶部输出查询:

布尔模式关闭,结果正常

(链接死亡)

布尔模式开启,结果不按预期返回

(链接死亡)

布尔模式关闭,结果好,虽然不确定‘天祖:影子刺客’是如何得分更相关的其他‘刺客信条’游戏?

(链接死亡)

布尔模式开启,结果不显示“刺客信条iii”

(链接死亡)

自动完成短信部分单词,布尔模式关闭,没有结果?!

(链接死亡)

自动完成文本部分单词,布尔模式关闭,确定结果

(链接死亡)

不知道为什么打开/关闭布尔模式会产生如此奇怪的结果。这就像我需要开一些搜索和关闭一些搜索,但我需要一个单一的搜索查询。分数似乎只是无处可查的BS数字。

另外,如果我开始为非可选的单词添加“+”,它会产生甚至更奇怪的结果。我添加全文的全部原因是为了使事情更加灵活,并返回更多有用的结果,但似乎使事情变得更糟。

,所以我的问题,我如何使它每次返回有用的结果,不管这个特定搜索术语/游戏的细微差别,以及它是部分搜索,还是完整搜索。理想情况下类似于http://www.metacritic.com/的操作方式(右上搜索框)

EN

回答 1

Stack Overflow用户

发布于 2012-11-17 07:18:05

我教过的一个课程项目涵盖了这个主题:https://grape.ics.uci.edu/wiki/public/wiki/cs122b-2012-spring-project4#Requirement2解决方案:https://grape.ics.uci.edu/wiki/public/wiki/cs122b-2012-spring-mysql-fulltext注意以下示例:

前缀搜索:选择entryID从ft,其中匹配(条目)对('grad*‘在布尔模式);

布尔搜索:从ft中选择entryID匹配(条目)对(‘+研究生-michigan’在布尔模式下);

这种方法有效,但速度慢,排名不佳。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/13418996

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档