全文索引的使用(MySQL)
全文索引的使用(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(“北京尚学堂”)
上一篇: 跟老公吵架很想离婚怎么办
下一篇: 跟老公吵架他想离婚怎么办
推荐阅读
-
IOS中使用UIWebView 加载网页、文件、 html的方法
-
iOS应用开发中视图控件UIWindow的基本使用教程
-
IOS中UIWebView的使用详解
-
android TextView多行文本(超过3行)使用ellipsize属性无效问题的解决方法
-
Android Timer使用的实例代码
-
Android 中HttpURLConnection与HttpClient使用的简单实例
-
Android中AnimationDrawable使用的简单实例
-
Mysql的慢日志
-
mysql数据库中插入数据INSERT INTO SET的优势
-
mysql 开发进阶篇系列 43 逻辑备份与恢复(基于时间和位置的不完全恢复)