如何在全文搜索中实现数值搜索?

rqdpfwrv  于 2021-06-17  发布在  Mysql
关注(0)|答案(1)|浏览(349)

相似条件:

product.product_name like '%7 up%'

此处输出
全文搜索:

MATCH(product.product_name) AGAINST('+7+up' IN BOOLEAN MODE)

或者

MATCH(product.product_name) AGAINST('"7 up"' IN BOOLEAN MODE)

为什么上面两个查询都没有返回任何结果?

g6ll5ycj

g6ll5ycj1#

第一个表达式看起来不错,但是您应该知道,默认情况下,mysql会忽略短于三个字符的单词。这由参数innodb\u ft\u min\u token\u size控制。可以更改该参数,但需要重新启动服务器并重建全文索引;mysql不建议这样做。有关全文调优的详细信息,请参阅本文档。
第二个表达式,用双引号括起来,将尝试执行一个litteral匹配:这似乎不是您所需要的。
简而言之:考虑到你正在搜索的内容,你最好使用 LIKE .

相关问题