Php MYSQL匹配示例不工作。是";水疗中心;停止语?
我不明白为什么这个查询不返回任何结果。Php MYSQL匹配示例不工作。是";水疗中心;停止语?,php,mysql,Php,Mysql,我不明白为什么这个查询不返回任何结果。 它应该找到至少10行中有spa这个词。Spa不是关键字/停止词,是吗?要索引的词的最小和最大长度由ft_min_word_len和ft_max_word_len系统变量定义默认最小值为四个字符;默认最大值取决于版本。如果更改任一值,则必须重建全文索引。例如,如果希望搜索三个字符的单词,可以通过在选项文件中放置以下行来设置ft_min_word_len变量: SELECT * FROM mytable WHERE match(fieldname) again
它应该找到至少10行中有spa这个词。Spa不是关键字/停止词,是吗?要索引的词的最小和最大长度由ft_min_word_len和ft_max_word_len系统变量定义默认最小值为四个字符;默认最大值取决于版本。如果更改任一值,则必须重建全文索引。例如,如果希望搜索三个字符的单词,可以通过在选项文件中放置以下行来设置ft_min_word_len变量:
SELECT * FROM mytable WHERE match(fieldname) against('spa')
然后重新启动服务器并重建全文索引。请特别注意本清单后面的说明中有关myisamchk的备注
来源:不,spa不是默认的stopwords之一,但MySQL全文搜索中有一个最小字长,我相信默认为4:搜索的最小字长为4个字符。然而,搜索功能似乎可以改变 MySQL的全文搜索功能几乎没有用户可调的参数。 如果您愿意,您可以对全文搜索行为施加更多的控制 拥有MySQL源代码分发版,因为某些更改需要源代码 代码修改。请参阅第2.17节“从源代码安装MySQL” 请注意,全文搜索是经过仔细调整的,以获得最佳效果 有效性在大多数情况下,修改默认行为可以 实际上会降低效率。不要更改MySQL源代码,除非 你知道你在做什么 本节中描述的大多数全文变量必须设置为 服务器启动时间。需要重新启动服务器才能更改它们;他们 无法在服务器运行时修改 某些变量更改需要在中重建全文索引 你的桌子。本章后面将给出执行此操作的说明 节
要编制索引的单词的最小和最大长度由 ft_min_word_len和ft_max_word_len系统变量。(见第节) 5.1.3“服务器系统变量”。)默认最小值为四个字符;默认最大值取决于版本。如果你改变 无论是哪个值,都必须重建全文索引。例如,如果 如果要搜索三个字符的单词,可以设置 通过在选项中输入以下行,可以使用ft_min_word_len变量 文件: 然后重新启动服务器并重建您的 全文索引。请特别注意以下关于myisamchk的评论: 此列表后面的说明
你不需要至少4个字符的单词来匹配吗?你在
字段名上有全文索引吗?专栏是否区分大小写?谢谢。这很有道理,但我不会重置系统变量,而是在代码中添加某些3个字符关键字的例外情况。
[mysqld]
ft_min_word_len=3
[mysqld]
ft_min_word_len=3