gpt4 book ai didi

MYSQL match against not showing same results as mysql like %% 查询

转载 作者:可可西里 更新时间:2023-11-01 06:52:13 24 4
gpt4 key购买 nike

我们只是将我们所有的 mysql like %% 查询迁移到 MATCH Against

我们的旧查询是

SELECT * from jobs where jobtitle like '%php%' 

我尝试了以下查询

SELECT * from jobs where MATCH(jobtitle) AGAINST ('php')
SELECT * from jobs where MATCH(jobtitle) AGAINST ('php' IN BOOLEAN MODE)

我试过 * + 并且除了没有查询之外的所有查询都显示完全相同的结果,显示为 '%php%'

我希望 mysql 查询使用 match against 来查找职位名称中的任何位置

最佳答案

要索引的单词的最小和最大长度由 ft_min_word_len 和 ft_max_word_len 系统变量定义。默认最小值为 4 个字符。这就是它不适用于 3 个字符的原因。

您需要更改它的值,并重建您的 FULLTEXT 索引。如果要搜索三个字符的单词,可以通过更改配置文件中的值来设置 ft_min_word_len 变量。或者,如果你有 super 用户权限,你可以设置这个环境变量:

SET  ft_min_word_len=3

查看更多详细信息:http://dev.mysql.com/doc/refman/5.1/en/fulltext-fine-tuning.html

关于MYSQL match against not showing same results as mysql like %% 查询,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33820101/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com