全文索引的使用(MySQL)

全文索引的使用与其他索引不同,在查询语句中需要使用match(列名) against(要搜索的词)来检索数据;


一、全文解析器


全文索引中基本单位是“词”。分词,全文索引是以词为基础的,MySQL默认的分词是所有非字母和数字的特殊符号都是分词符。在检索数据时给定的检索条件也是词;

MySQL中默认的全文解析器不支持中文分词。如果数据含有中文需要更换全文解析器ngram;


二、使用全文索引


Select 投影列 from 表名 where match(全文索引列名) against(“搜索内容”)

(一)修改 emp8 表,为 content 列创建名为 emp8_content_full 的全文索引

Alter table emp8 add fulltext emp8_content_full(content);

(二)向 emp8 表中插入一条数据 content 的值为”hello,bjsxt”

Insert into emp8(content) values(“hello,bjsxt”)

(三)查询 emp8 表中内容包含 bjsxt 的数据。

Select * from emp8 where match(content) against(“bjsxt”)

三、更换全文解析器


在创建全文索引时可以指定ngram解析器
Alter table 表名 add fulltext 索引名(列名) with parser ngram

(一)删除 emp8 表中的 emp8_content_full 全文索引

Drop index emp8_content_full on emp8;

(二)修改 emp8 表,为 content 列添加名称为 emp8_content_full 的全文索引, 并指定
ngram全文解析器。

Alter table emp8 add fulltext emp8_content_full(content) with parser ngram;

(三)向 emp8 表中添加一条数据 content 值为”你好,北京尚学堂”

Insert into emp8(content) values(“你好,北京尚学堂”)

(四)查询 emp8 表中内容包含”北京尚学堂”的数据

Select * from emp8 where match(content) against(“北京尚学堂”)

全文索引的使用(MySQL)相关推荐

  1. pomelo mysql_全文索引 - Pomelo.EFCore.MySql

    原标题:全文索引 - Pomelo.EFCore.MySql 背景 全文索引:MySQL全文检索是利用查询关键字和查询列内容之间的相关度进行检索,可以利用全文索引来提高匹配的速度. Pomelo.En ...

  2. 全文索引 - Pomelo.EFCore.MySql

    背景 全文索引:MySQL全文检索是利用查询关键字和查询列内容之间的相关度进行检索,可以利用全文索引来提高匹配的速度. Pomelo.EntityFrameworkCore.MySql:一款第三方My ...

  3. MySQL索引介绍,普通索引,全文索引,空间索引,多列索引使用原则,建立索引常用的规则

    转自:https://blog.csdn.net/tomorrow_fine/article/details/78337735 1.MySQL在创建数据表的时候创建索引 在MySQL中创建表的时候,可 ...

  4. MySQL 之全文索引

    最近在复习数据库索引部分,看到了 fulltext,也即全文索引,虽然全文索引在平时的业务中用到的不多,但是感觉它有点儿意思,所以花了点时间研究一下,特此记录. 引入 概念 通过数值比较.范围过滤等就 ...

  5. mysql基础语法之(全文索引)

    1.概要 InnoDB引擎对FULLTEXT索引的支持是MySQL5.6新引入的特性,之前只有MyISAM引擎支持FULLTEXT索引.对于FULLTEXT索引的内容可以使用MATCH()-AGAIN ...

  6. Mysql全文索引性能测试对比

    在关系型数据库中,使用like模糊查询,如果是 'xxx%'头匹配方式,字段索引不会失效,性能能接受:但如果是 '%xxx%'全文匹配方式,索引会失效,在数据量大的情况下,通过此种方式查询的效率极低. ...

  7. MySQL全文索引怎么创建

    mysql全文索引 很慢,速度不如like的百分之一 从explain开始说起吧,很显然第一个sql语句压根没用任何索引(key列内什么都没有)!第二个倒是用到索引,却是主键索引,并非你添加的full ...

  8. mysql全文索引的搜索模式,MySQL5.7官方文档翻译: 全文索引,自然语言搜索模式

    开始MATCH (col1, col2, ...) AGAINST (expr \[search_modifier\]) search_modifier: { IN NATURAL LANGUAGE ...

  9. MySQL索引系列:全文索引

    什么是全文索引? 全文索引首先是 MySQL 的一种索引类型,也是搜索引擎的关键技术. 试想在1M大小的文件中搜索一个词,可能需要几秒,在100M的文件中可能需要几十秒,如果在更大的文件中搜索那么就需 ...

  10. MySQL 之全文索引(fulltext)

    本文源自:https://blog.csdn.net/mrzhouxiaofei/article/details/79940958 最近在复习数据库索引部分,看到了 fulltext,也即全文索引,虽 ...

最新文章

  1. linux kafka进程挂了 自动重启
  2. 计算机视觉中的自注意力
  3. 【ZooKeeper】配置文件详解
  4. OJ系列之---字符串分割
  5. 深圳python如何评价_Python分析18万条《八佰》影评,看看观众怎么说?
  6. 【直播回放】新手如何入门并学习自然语言处理
  7. java程序中可以有几个构造方法_java中多个构造方法可以相互引用么?
  8. ITK:相互信息仿射
  9. 【slighttpd】基于lighttpd架构的Server项目实战(4)—简单的echo服务器
  10. 针对移动互联网应用的网络建设和优化
  11. matlab 微秒 符号,matlab处理csi
  12. inx函数python_Python数据分析入门
  13. ACM_栈的压入、弹出序列
  14. Ext4核心组件Grid的变化及学习(2):数据列的基本操作
  15. 【数论】四则运算的取模处理
  16. java 生成拼音首字母_java 根据汉字生成拼音全拼或拼音首字母的示例
  17. DELPHI源码防QQ截屏区域截图全屏截图框架
  18. 顶级知识管理工具Evernote的GTD应用详细指南
  19. Android系统中固件崩溃后使用uevent机制重新加载固件 流程分析
  20. golang 大数据平台_Golang在Momenta大数据平台当中的应用

热门文章

  1. Linux根据端口号查进程
  2. How to scroll the window using JQuery $.scrollTo() function
  3. Unity3d 去掉exe版本的边框
  4. 通过飞行CALL找到BT飞行偏移 和飞行状态偏移
  5. 获得主窗口句柄AfxGetApp()-m_pMainWnd
  6. kmalloc、vmalloc、malloc的区别
  7. python 语言教程(3)变量之数字类型
  8. C++ Primer 5th笔记(6)chapter6 函数:函数指针
  9. 2022年美国大学生数学建模竞赛——Problem E:林业固碳
  10. MTK方案下tee.img的打包方式的详细拆解