1.问题引入

有下表,name,cid字段是联合索引

CREATE TABLE `student` (`id` int(11) NOT NULL AUTO_INCREMENT,`name` varchar(255) DEFAULT NULL,`cid` int(11) DEFAULT NULL,`did` int(11) DEFAULT NULL,PRIMARY KEY (`id`),KEY `name_cid_INX` (`name`,`cid`),KEY `name_INX` (`name`)
) ENGINE=InnoDB AUTO_INCREMENT=8 DEFAULT CHARSET=utf8

2.如何将cid用上索引

EXPLAIN SELECT name, cid FROM student WHERE   cid=1;

说明用上了索引。但是这个索引是覆盖索引!!!!

覆盖索引其实是一种特殊的联合索引,怎么理解呢,即是你查询的字段的所有数据都在索引上,不需要再进行一次回表查询,这样的索引即为覆盖索引

所以说,只要我们查询的内容联合索引包含的字段,那么我们就可以单独使用某个字段进行查询走索引

3.再走一次联合索引看看,区别如何

EXPLAIN SELECT name, cid FROM student WHERE  name='小红' AND cid=1;

这两种的区别type是不一样的,覆盖索引是Index,联合索引是ref

再走一例子

EXPLAIN SELECT name FROM student WHERE  name='小红' ;

因此可以得出我们优先走联合索引而不是覆盖索引。

联合索引(a,b,c),怎么单独检索b用上索引相关推荐

  1. 推荐系统[九]项目技术细节讲解z4:向量检索技术工程上实践,曝光去重实践以及检索引擎该如何选择:支撑亿级索引、5毫秒级的检索[elasticsearch、milvus]

    搜索推荐系统专栏简介:搜索推荐全流程讲解(召回粗排精排重排混排).系统架构.常见问题.算法项目实战总结.技术细节以及项目实战(含码源) 专栏详细介绍:搜索推荐系统专栏简介:搜索推荐全流程讲解(召回粗排 ...

  2. mysql索引缓存的内容_mysql服务器变量、缓存及索引

    服务器变量 注意:其中有些参数支持运行时修改,会立即生效:有些参数不支持,且只能通过修改配置文件,并重启服务器程序生效:有些参数作用域是全局的,且不可改变:有些可以为每个用户提供单独(会话)的设置. ...

  3. mysql gis index 索引原理_从原理到优化,深入浅出数据库索引

    MySQL官方对索引的定义为:索引(Index)是帮助MySQL高效获取数据的数据结构. 数据库查询是数据库的最主要功能之一,我们都希望查询数据的速度能尽可能的快,因此数据库系统的设计者会从查询算法的 ...

  4. mysql join on 索引_连接查询,表关联查询join on,索引,触发器,视图

    一.连接查询 1.统计每一个部门的人数  "部门名,部门的人数" select department,count(eid) from employee group by depar ...

  5. 简述一下索引的匹配原则_【进阶之路】索引中一些易忽视的点

    导言 大家好,我是练习java两年半时间的南橘,下面是我的微信,需要之前的导图或者想互相交流经验的小伙伴可以一起互相交流哦. 这是这篇文章的思维导图,因为用的是免费版的软件,所以有不少水印,需要的可以 ...

  6. mysql 索引 美团_美团面试官:说说MySQL的索引

    从本文开始,选取牛客网上大厂的面试题,整理出相关内容的知识点. 什么是索引 小学时我们经常用到的字典里有音节索引和部首目录,当我们查字典时,常常用音节索引和部首目录帮助我们提高查找汉字的速度.MySQ ...

  7. MySQL数据库索引的类型、命名规范、建立原则以及索引失效的情况

    本篇中记录下数据库索引相关的知识点! 索引是什么? 举个例子:大家去图书馆借书时,会先在电脑检索书名或作者等关键字信息,查询出该本书对应的一个图书索引后,紧接着就可以拿着这个图书索引去精确定位存放该索 ...

  8. mysql调试索引_10 分钟让你明白 MySQL 是如何利用索引的?

    一.前言 在 MySQL 中进行 SQL 优化的时候,经常会在一些情况下,对 MySQL 能否利用索引有一些迷惑. 譬如: MySQL 在遇到范围查询条件的时候就停止匹配了,那么到底是哪些范围条件? ...

  9. mysql索引使增删变慢_mysql优化(四)–索引

    http://www.cnblogs.com/hustcat/archive/2009/10/28/1591648.html 一. 四种索引类型: 主键索引,唯一索引,全文索引,普通索引 二.  为什 ...

  10. mysql如何建立索引workbench_MySQL数据库中如何正确的理解与使用索引?

    索引是存储引擎用于快速查找记录的一种数据结构,我们可以通过合理的使用数据库索引以提高数据库的访问效率.接下来主要介绍在MySQL 数据库中索引类型,以及如何创建出更加合理且高效的索引技巧. MySQL ...

最新文章

  1. java锁屏_JAVA设置桌面不锁屏设置
  2. lt li gt html,lt;ligt;...这个符号什么意思,放在中间有什么作用?
  3. 十大最急需IT技术人才榜:Java开发人员领跑
  4. 建议 Solr 用户更新 Apache POI
  5. cmd输入net start mysql提示:服务名无效(解决方案笔记)
  6. anaconda在安装依赖包时出现报错提示 ‘requests‘ is a dependency of conda and cannot be remove from conda‘s operatin
  7. CVPR2021 DRConv:即插即用!旷视孙剑、张祥雨团队提出动态区域感知的卷积,涨点显著!...
  8. Google浏览器开发者工具:CSSViewer(一个Css查看器)
  9. 悦读上品 得乎益友
  10. 网易云音乐歌词下载器
  11. 2020年度博客之星发榜了,第一次参加,第70名,感谢给我投票的老铁们,2021继续努力!
  12. 如何加声调口诀_汉语拼音声调标注口诀
  13. java构造方法中this_Java中this关键字在构造方法中的使用
  14. MQTT-Eclipse paho mqtt重连机制
  15. 人工智能安全(五)—梯度攻击
  16. MATLAB操作学习---起式
  17. Linux系统的安装与设置
  18. excel考试知识点计算机二级,全国计算机二级等级考试Excel要点考点归纳.doc
  19. 聊聊redis分布式锁的8大坑!
  20. 习题9-1时间换算:本题要求编写程序,以hh:mm:ss的格式输出某给定时间再过n秒后的时间值(超过23:59:59就从0点开始计时)...

热门文章

  1. float,double和decimal类型
  2. STC学习:定时器和中断
  3. 南阳oj-----一种排序(set)
  4. c语言递归1到10联程,为什么这个递归能输出1到10
  5. 【SGU495】Kids and Prizes(概率dp)
  6. 爬虫伪装请求头-fake-useragent
  7. Tests for normality正态分布检验(python代码实现)
  8. python while快速写法_从零开始学Python,带你手把手实战之一
  9. matlab保存矩阵为txt,matlab保存矩阵成txt
  10. [codeup 2031]To Fill or Not to Fill