本文介绍: 这些通常是最常见的单词比如the“、”is“、”at” 等英语中的助词、介词、连接词等。它们通常不含有具体的搜索意义,因此在创建全文索引的时候会被排除在外,以便减少索引大小提高搜索效率。举例来说,如果你对一个包文章文本的列使用全文索引搜索,但希望 “the” 和 “is” 这样的常见单词能够在搜索中匹配,你可能需要自定义停用词表或使用。- 当执行全文搜索时,如果搜索字符串包含 Stopwords,那么这些词将不会被用于匹配。- 更改停用词表后,相关全文索引需要重建,以确保新的停用词列表生效

Full-Text Stopwords 是指在全文搜索时被索引系统默认忽略一组单词。这些通常是最常见的单词,比如the“、”is“、”at” 等英语中的助词、介词、连接词等。它们通常不含有具体的搜索意义,因此在创建全文索引的时候会被排除在外,以便减少索引大小提高搜索效率。

在 MySQL 中使用全文索引和搜索时,Stopwords 的作用如下

  1. 索引构建 – 当创建全文索引时,Stopwords 不会被包括在内。这意味着,如果你的搜索关键字包含了这些词,它们不会出现在索引结果中。

  2. 搜索查询 – 当执行全文搜索时,如果搜索字符串包含 Stopwords,那么这些词将不会被用于匹配。

可以通过查看 MySQL 的官方文档获取默认的 Stopword 列表,并根据需要修改它。例如,在 MyISAM 引擎中,停用词列表存储storage/myisam/ft_static.c 文件中,而 InnoDB 引擎的停用词列表是由服务器变量 innodb_ft_default_stopword 指定的表。

若要改变默认的停用词集合,你可以进行以下操作

  1. 自定义停用词表通过设置系统变量(例如 ft_stopword_file)来指定自己的停用词文件路径,或者对于 InnoDB 表,通过innodb_ft_server_stopword_table 设置一个指向自己停用词表的值。

  2. 重新生成索引更改停用词表后,相关的全文索引需要重建,以确保新的停用词列表生效

  3. 使用IN BOOLEAN MODE搜索 – 如果你想在搜索时忽略停用词列表,可以在全文搜索中使用 IN BOOLEAN MODE 选项,这样即使是停用词也会被用于搜索匹配。

举例来说,如果你对一个包文章文本的列使用全文索引搜索,但希望 “the” 和 “is” 这样的常见单词能够在搜索中匹配,你可能需要自定义停用词表或使用 IN BOOLEAN MODE 进行搜索。

请注意,调整停用词列表可能影响搜索结果相关性性能,因此应谨慎进行。

原文地址:https://blog.csdn.net/jkzyx123/article/details/134712985

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任

如若转载,请注明出处:http://www.7code.cn/show_19165.html

如若内容造成侵权/违法违规/事实不符,请联系代码007邮箱suwngjj01@126.com进行投诉反馈,一经查实,立即删除

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注