旧版的MySQL的全文索引只能用在MyISAM表格的char、varchar和text的字段上。

不过新版的MySQL5.6.24上InnoDB引擎也加入了全文索引,所以具体信息大家可以随时关注官网,

下面我来谈谈mysql全文索引的用法,网上很多啦,我只讲讲我所了解滴部分哈:

我的mysql版本是:

新建一张表test:

CREATE TABLE`test` (

`name`char(12) NOT NULL DEFAULT ‘‘,

`nickname`char(12) NOT NULL DEFAULT ‘‘,

FULLTEXTKEY`name` (`name`,`nickname`)

) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;

插入测试数据:

INSERT INTO `test` (`name`, `nickname`) VALUES("马特", "我喜欢laravel");INSERT INTO `test` (`name`, `nickname`) VALUES("马特", "我喜欢laravel吧");INSERT INTO `test` (`name`, `nickname`) VALUES("吉普森", "我不喜欢laravel啊");INSERT INTO `test` (`name`, `nickname`) VALUES("吉普森", "我不会吧 啊");INSERT INTO `test` (`name`, `nickname`) VALUES("凯文", "我真的不会吧");INSERT INTO `test` (`name`, `nickname`) VALUES("玛丽", "我真的 不会吧");

好,数据接口和测数据已经添加完毕,回到"全文索引"...我们说下基本使用:

1.创建全文索引(FullText index)

1.1. 创建表的同时创建全文索引

CREATE TABLE`test` (

`name`char(12) NOT NULL DEFAULT ‘‘,

`nickname`char(12) NOT NULL DEFAULT ‘‘,

FULLTEXTKEY`name` (`name`,`nickname`)

) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;

1.2.通过 alter table 的方式来添加

ALTER TABLE `test` ADD FULLTEXT INDEXusername (`name`) #username 是索引名,可以随便起

或者:ALTER TABLE `test` ADD FULLTEXT username (`name`)

1.3. 直接通过create index的方式

CREATE FULLTEXT INDEX username ON`test` (`name`)CREATE FULLTEXT INDEX username ON `test` (`name`(20)) # 也可以在创建索引的时候指定索引的长度

2. 删除全文索引

2.1. 直接使用 drop index(注意:没有 drop fulltext index 这种用法)

DROP INDEX username ON test

2.2. 使用 alter table的方式

ALTER TABLE test DROP INDEX username;

3.使用全文索引

跟普通索引稍有不同

使用全文索引的格式:  MATCH (columnName) AGAINST (‘string‘)

比如:

未完待续...

MySQL全文索引模糊查询_mysql全文索引之模糊查询相关推荐

  1. mysql 中文字段名_MySQL全文索引怎么做?| 教程分享

    - 点击上方"爱数据学习社"关注我们吧! - 文末领取[商业分析资料] 为什么要用全文索引 我们在用一个东西前,得知道为什么要用它,使用全文索引无非有以下原因: like查询太慢. ...

  2. db2有MySQL那样的时间戳_MySQL 按照日期格式查询带有时间戳数据

    按照日期格式查询带有时间戳数据一般在MSQL数据库中的时间都是以时间戳的格式来存储时间的,但是对于我们来说,时间戳格式具体表示的是什么时间,我们很难一眼看出来,所以当我们要具体查询某一个时间或时间段的 ...

  3. MySQL数据库应用 多表查询_mysql数据库-多表查询

    今日任务 完成对MYSQL数据库的多表查询及建表的操作 教学目标 掌握MYSQL中多表的创建及多表的查询 掌握MYSQL中的表关系分析并能正确建表 昨天内容回顾: ​ 数据库的创建 : create ...

  4. mysql 新建子查询_Mysql创建SQL子查询ALIAS

    通常这些被称为视图.例如: CREATE VIEW vMyLongQuery AS SELECT a, b, c FROM (LONG QUERY) X WHERE ... 然后可以像这样引用: SE ...

  5. mysql范围查找性能_MYSQL(四)查询性能优化

    优化数据访问 1.是否向数据库请求了不需要的数据 解决方式: A. 查询后加limit B. Select后写需要的列而不是* 2. 是否扫描了额外的数据 数据库的访问方式速度由慢到快:全表扫描,索引 ...

  6. mysql多线程查询_MySQL 利用多线程提升查询性能的一种思路

    转载自:http://dinglin.iteye.com/blog/1432443 背景 报表统计类的查询是一类耗时的查询.使用场景是QPS并不大,单每个查询由于需要访问较多数据,对大量数据做处理,执 ...

  7. mysql设置定位慢查询_mysql优化——定位慢查询

    1.定位慢查询 1.show status 命令 命令使用方式:show [session|global] status like 'slow_queries' 如果你不写  [session|glo ...

  8. mysql关联表分页查询_MySQL一对多分页查询-主表关联表条件查询问题

    文章目录 1 摘要 2 情景复现 2.1 数据模型 2.2 核心代码 2.3 测试数据 2.4 拓展一点 1 摘要 分页查询是后台项目中最常见的一种操作,在一对多(one to many)的关系表中, ...

  9. mysql结果作为另一次查询_MySql中一次查询结果用作二次查询条件

    Sql的截取关联查询 最近在写sql时,碰到了如下情况, 需求是通过一个账户的id去查询关联的该账户下的所有简历,其中地址字段要通过另一个表进行关联查询.地址字段存的是地址表中对应的编号. 例如210 ...

  10. mysql 多表中间表查询_mysql多表连接查询

    新建两张表: 表1:student  截图如下: 表2:course  截图如下: (此时这样建表只是为了演示连接SQL语句,当然实际开发中我们不会这样建表,实际开发中这两个表会有自己不同的主键.) ...

最新文章

  1. 报名 | 贝叶斯计算方法在生物制药领域的应用(基于SAS)
  2. 【UIKit】TabView
  3. 使用C#进行Word 2002和Excel 2002编程
  4. DATAGUARD STANDBY 服务器归档日志管理
  5. python递归求5!_用Python解数独[6]:递归获得最终答案
  6. 基于JAVA+SpringMVC+Mybatis+MYSQL的旅游景点酒店预订网站设计
  7. 中国量子计算机 是纠缠,量子纠缠获得突破,中国量子计算机问世,民营企业立下显著功勋...
  8. 【服务器】在 iPad 上运行 VSCode(宝塔+code server)
  9. git 分支管理策略(7)
  10. SpringMVC、SpringBoot拦截器的实现和原理
  11. PCB绘图要点QA汇总
  12. ubuntu18.04 安装绿联usb转网卡驱动
  13. mysql sqlserver 跨库查询_SQLServer跨库查询
  14. pearson 相关系数可视化
  15. 使用Cisco Packet Tracer 搭建网络
  16. insert用法小结
  17. 分节符是什么?怎么利用分节符设置某一页文档的页眉页脚?
  18. matlab 非a到z,matlab命令及函数A到Z
  19. Android8.0替换默认静态壁纸
  20. nginx+uwsgi+django1.9+mysql+python2.7部署到CentOS6.5

热门文章

  1. [html] input元素size属性和width 的区别是什么?
  2. [html] 请使用一个div写出有三条横线的小图标
  3. [html] 说说你对html中的置换元素和非置换元素的理解
  4. [css] 说说你对jpg、png、gif的理解,分别在什么场景下使用?有使用过webp吗?
  5. 工作283:从字典表获取数值
  6. 工作74:vue带参数跳转其他页面
  7. “约见”面试官系列之常见面试题之第一百零六篇之css只在当前组件中起作用(建议收藏)
  8. EC20模组使用MQTT库对接EMQX,基于STM32F407
  9. python词云_python词云
  10. case mybatis 不同表_解决mybatis case when 报错的问题