【MySQL精通之路】全文搜索(5)-限制

ops/2024/10/4 9:03:56/

 主博客:
【MySQL精通之路】全文搜索功能-CSDN博客


全文搜索仅支持InnoDB和MyISAM表。

分区表不支持全文搜索。参见“分区的限制限制”。

全文搜索可用于大多数多字节字符集

例外的是,对于Unicode,可以使用utf8mb3或utf8mb4字符集,但不能使用ucs2字符集。

尽管不能对ucs2列使用FULLTEXT索引,但可以对没有此类索引的ucs2列执行IN BOOLEAN MODE搜索。

utf8mb3的备注也适用于utf8mb4,ucs2的备注也应用于utf16、utf16le和utf32。

表意文字语言,如汉语和日语,没有单词分隔符。

因此,内置的全文解析器无法确定这些语言和其他此类语言中的单词的开头和结尾。

提供了一个支持中文、日语和韩语(CJK)的基于字符的ngram全文解析器,以及一个支持日语的基于单词的MeCab解析器插件,用于InnoDB和MyISAM表。


尽管支持在单个表中使用多个字符集,但FULLTEXT索引中的所有列都必须使用相同的字符集和排序规则。

MATCH()列列表必须与表的某些FULLTEXT索引定义中的列列表完全匹配,除非此MATCH(在MyISAM表上处于BOOLEAN模式。对于MyISAM表,可以在无索引列上进行布尔模式搜索,尽管搜索速度可能较慢。

AGINST()的参数必须是在查询求值期间为常量的字符串值。例如,这排除了表列,因为每行的列可能不同。

从MySQL 8.0.28开始,MATCH()的参数不能使用汇总列。

与非FULLTEXT搜索相比,FULLTEXT检索的索引提示更受限制。参见“索引提示”。

对于InnoDB,所有涉及具有全文索引的列的DML操作(INSERT、UPDATE、DELETE)都在事务提交时处理。例如,对于INSERT操作,插入的字符串被标记化并分解为单个单词。然后,当事务被提交时,各个单词被添加到全文索引表中。因此,全文搜索只返回提交的数据。

“%”字符不是全文搜索支持的通配符。


http://www.ppmy.cn/ops/44788.html

相关文章

认识 React Hooks

回顾函数组件 函数组件 没有组件实例 不能监听各个生命周期 无法扩展属性和方法 没有 state 和 setState 只是输入 props ,输出 jsx ,纯函数。 // class 组件class List extends React.Component {constructor(props) {super(props)}render() {con…

人工智能初识

🌞欢迎来到人工智能基础的世界 🌈博客主页:卿云阁 💌欢迎关注🎉点赞👍收藏⭐️留言📝 🌟本文由卿云阁原创! 📆首发时间:🌹2024年5月1…

关于《Java并发编程之线程池十八问》的补充内容

一、写在开头 在上一篇文章我们写《Java并发编程之线程池十八问》的时候,鉴于当时的篇幅已经过长,很多内容就没有扩展了,在这篇文章里对一些关键知识点进行对比补充。 二、Runnable vs Callable 在创建线程的时候,一般会选用 Runnable 和 Callable 两种方式。 【源码对…

智慧排水监测系统方案

智慧排水监测系统方案 智慧排水监测系统作为现代城市基础设施管理的重要组成部分,旨在通过先进的信息技术手段,实现对城市排水系统的全面、实时、高效的远程监控与管理。该系统整合了物联网技术、大数据分析、云计算平台与人工智能算法,不仅…

Kubernetes中部署ELK Stack日志收集平台

1 、ELK概念 ELK是Elasticsearch、Logstash、Kibana三大开源框架首字母大写简称。市面上也被成为Elastic Stack。其中: Elasticsearch是一个基于Lucene、分布式、通过Restful方式进行交互的近实时搜索平台框架。像类似百度、谷歌这种大数据全文搜索引擎的场景都可以使用Elas…

【busybox记录】【shell指令】mkfifo

目录 内容来源: 【GUN】【mkfifo】指令介绍 【busybox】【mkfifo】指令介绍 【linux】【mkfifo】指令介绍 使用示例: 创建管道文件 - 创建的时候同时指定文件权限 常用组合指令: 指令不常用/组合用法还需继续挖掘: 内容来…

程序猿转型做项目经理一定要注意这 5 个坑

前言 国内的信息系统项目经理,很多都是从技术骨干转型的,我就是这样一路走过来的,这样有很多好处,比如技术过硬容易服众、熟悉开发流程更容易把控项目进度和质量、开发过程中碰到难题时更好组织攻坚等等,但是所谓成也…

Django学习

1.pycharm社区版创建django PyCharm社区版如何创建Django项目并运行_pycharm社区版打开django-CSDN博客 2.Django TemplateDoesNotExist: rest_framework 当我们使用djangorestframework框架时,首先下载pip install djangorestframework 参考博文Django Templat…