验证联合索引使用的情况

索引是一个排序的结构,用于快速检索和加速排序

MySQL表结构

index_test | CREATE TABLE `index_test` (

`c1` char(10) NOT NULL,

`c2` char(10) NOT NULL,

`c3` char(10) NOT NULL,

`c4` char(10) NOT NULL,

`c5` char(10) NOT NULL,

KEY `index_c1c2c3c4` (`c1`,`c2`,`c3`,`c4`)

) ENGINE=MyISAM DEFAULT CHARSET=utf8

(1).

mysql> explain select * from index_test where c1=‘c1‘ and c2=‘c2‘ and c4>‘c4‘ and c3=‘c3‘\G;

*************************** 1. row ***************************

id: 1

select_type: SIMPLE

table: index_test

type: range

possible_keys: index_c1c2c3c4

key: index_c1c2c3c4

key_len: 120

ref: NULL

rows: 1

Extra: Using index condition

由key_len: 120可知,四个索引都用到了(utf8,一个字符占用3个字节);

(2).

explain select * from index_test where c1=‘c1‘ and c2=‘c2‘ and c4=‘c4‘ order by c3\G;

*************************** 1. row ***************************

id: 1

select_type: SIMPLE

table: index_test

type: ref

possible_keys: index_c1c2c3c4

key: index_c1c2c3c4

key_len: 60

ref: const,const

rows: 1

Extra: Using index condition; Using where

c1,c2,c3都用到了,c1,c2索引用于排序,c3索引用于排序

(3)

select * from index_test where c1=‘c1‘ and c2=‘c2‘ order by c3,c2\G;

*************************** 1. row ***************************

id: 1

select_type: SIMPLE

table: index_test

type: ref

possible_keys: index_c1c2c3c4

key: index_c1c2c3c4

key_len: 60

ref: const,const

rows: 1

Extra: Using index condition; Using where

c1,c2,c3 c3用到索引是因为c2是常量

(4)

explain select * from index_test where c1=‘c1‘ and c5=‘c5‘ order by c2,c3\G;

*************************** 1. row ***************************

id: 1

select_type: SIMPLE

table: index_test

type: ref

possible_keys: index_c1c2c3c4

key: index_c1c2c3c4

key_len: 30

ref: const

rows: 1

Extra: Using index condition; Using where

c1,c2,c3用到索引了

(5)

explain select * from index_test where c1=‘c1‘ and c2=‘c2‘ and c5=‘c5‘ order by c3,c2\G;

*************************** 1. row ***************************

id: 1

select_type: SIMPLE

table: index_test

type: ref

possible_keys: index_c1c2c3c4

key: index_c1c2c3c4

key_len: 60

ref: const,const

rows: 1

Extra: Using index condition; Using where

c1,c2,c3使用了索引

MySQL 联合索引使用情况

标签:isa   一个   表结构   ssi   index   har   加速   sql   condition

本条技术文章来源于互联网,如果无意侵犯您的权益请点击此处反馈版权投诉

本文系统来源:https://www.cnblogs.com/sun5/p/11523519.html

mysql 联合索引 range_MySQL 联合索引使用情况相关推荐

  1. mysql的联合索引_mysql联合索引

    联合索引 概念 联合索引又叫复合索引,即一个覆盖表中两列或者以上的索引,例如: index_name(column a,column b) 1 创建方式 执行alter table语句时创建 alte ...

  2. sql优化之:数据库索引创建原则,or/in/union与索引优化,聚集索引/非聚集索引/联合索引/索引覆盖,MySQL冗余数据的三种方案,MySQL双主一致性架构优化(来源:架构师之路)

    一.一些常见的SQL实践 (1)负向条件查询不能使用索引 select * from order where status!=0 and stauts!=1 not in/not exists都不是好 ...

  3. mysql索引篇之覆盖索引、联合索引、索引下推

    覆盖索引 在之前<mysql索引初识>这篇文章中提到过,mysql的innodb引擎通过搜索树方式实现索引,索引类型分为主键索引和二级索引(非主键索引),主键索引树中,叶子结点保存着主键即 ...

  4. 覆盖索引与联合索引_浅析MySQL的索引覆盖和索引下推

    写在前面 在MySQL数据库中,索引对查询的速度有着至关重要的影响,理解索引也是进行数据库性能调优的起点,索引就是为了提高数据查询的效率.今天我们来聊聊在MySQL索引优化中两种常见的方式,索引覆盖和 ...

  5. mysql联合索引和单索引_mysql联合索引跟单列索引的区别

    为了提高数据库效率,建索引是家常便饭:那么当查询条件为2个及以上时,我们是创建多个单列索引还是创建一个联合索引好呢?他们之间的区别是什么?哪个效率高呢?我在这里详细测试分析下. 一.联合索引测试 注: ...

  6. mysql 什么时候用单列索引?什么使用用联合索引?

    作者:范孝鹏 链接:https://www.zhihu.com/question/40736083/answer/88191544 来源:知乎 著作权归作者所有.商业转载请联系作者获得授权,非商业转载 ...

  7. MySQL 性能分析 之 联合索引(复合索引)实践分析

    MySQL 性能分析 之 联合索引(复合索引)实践分析 作为开发者,大家都知道,一个服务器.一个数据库的性能是项目的重中之重,后台架构.写法与数据库设计的好坏往往直接影响到整个项目的性能. 索引:是当 ...

  8. MySQL中的聚簇索引、非聚簇索引、联合索引和唯一索引

    一.索引类型 索引根据底层实现可分为B-Tree索引和哈希索引,大部分时候我们使用的都是B-Tree索引,因为它良好的性能和特性更适合于构建高并发系统. 根据索引的存储方式来划分,索引可以分为聚簇索引 ...

  9. 详细讲解MySQL索引与联合索引

    背景:  为了提高数据库效率,建索引是家常便饭:那么当查询条件为2个及以上时,我们是创建多个单列索引还是创建一个联合索引好呢?他们之间的区别是什么?哪个效率高呢?我在这里详细测试分析下. 一.联合索引 ...

最新文章

  1. 开始学习python的感受
  2. python3.8怎么打开创建_Python3.8有哪些新功能 怎么入行Python开发
  3. Java List.size()方法:返回列表中元素的个数(亲测)
  4. Mysql 客户端查询结果如何保存到本地而不是服务端?
  5. 《数据库原理与应用(第3版)》——小结
  6. 水题(water)(非详细解答)
  7. linux下的C语言开发(网络编程)
  8. oracle v$sysstat性能视图
  9. 上海大学c语言程序设计,上海大学2009-2010年度C语言程序设计秋季学期试卷.doc
  10. 基于Java visualvm的可视化监控的使用
  11. 关于flymcu烧录stm32芯片超时的问题解决
  12. cad电气工程量计算机,CAD电气管线快速算量方法
  13. 旧iPhone手机钱包中公交卡 银行卡 转移到新手机iPhone11上
  14. Crowd 和 JIRA、Confluence、Fisheye and Crucible共享账户集成登入
  15. 前端解决图片404的问题
  16. HDU - 3374(最小表示法+最大表示法)
  17. java二维数组的长度问题
  18. 安卓学习日记——Shortcut
  19. mybatis从入门到精通(刘增辉著)-读书笔记第二章
  20. 骂人的c语言,法语中骂人你就只会Merde?

热门文章

  1. photon 服务器操作系统,photon 云服务器
  2. 边缘计算白皮书_区块链+边缘计算技术白皮书(2020年)
  3. 在python语言中定义私有成员变量的方法是_Python在类中有“私有”变量吗?
  4. 8客户端安装后无法启动_QQ下载几天后无法启动、无法运行——可能与火绒有关...
  5. IDEA自定义快捷键
  6. 两个正数相乘为什么结果是负数
  7. Linux安装和卸载JDK
  8. 练习题 - 基于快速文本标题匹配的知识问答实现(二,实现篇)
  9. Python numpy函数:all()和any()比较矩阵
  10. Android项目实战登录注册