我正在使用 mysql 内置的布尔全文功能来搜索数据集。 (匹配...反对语法)。
我遇到一个问题,MySql 的默认停用词列表中的关键字不返回任何结果。例如,“之前”、“之间”等。
(我认为)没有办法在运行时禁用 MySql 的停用词。而且因为我在共享服务器 (DreamHost) 上托管我的网站,所以我无法选择在禁用停用词的情况下重新编译 MySQL。
我想知道是否有人对解决上述问题有任何建议? (无需升级到VPS或专用系统)
在此先感谢您的帮助,
Travis
我遇到了这个问题,并进行了谷歌搜索,发现了这篇文章(一年多后),我也在共享主机上,并且在 mysql 中设置的停用词上拉扯我的头发。我找到了一个对我来说非常有效的解决方法,希望它对其他人也有一定的用处。
您还可以使用REGEXP
命令来匹配表中的搜索词。
SELECT * FROM table WHERE column REGEXP 'searchterm'
我如何实现它是首先执行以下操作MATCH AGAINST
语法,如果 count = 0 我做REGEXP
相反,为我的用户提供更多结果。由于停用词和最小长度,总比没有结果好。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)