mysql
mysql
lyy9902
这个作者很懒,什么都没留下…
展开
-
浅谈MySQL的最左匹配和索引下推
这两个名词都是针对组合索引的,所以先看一下表的结构和表的索引。含有由ename列和job列的组合索引最左匹配:因为设置组合索引的时候,先ename列,再job列,所以若想使用这个组合索引,where条件里必须存在ename列,这种行为就是最左匹配。如下图所示,在1、2、3的执行计划中,type的值都是ref,关于ref的解释,拿了一段官方的解释放在示例图下了。大概意思就是type为ref的表示该sql语句使用了索引,但是在4的执行计划中,type的值为all,all的意思为全表扫描,没有使用任何原创 2020-12-18 11:03:21 · 505 阅读 · 0 评论 -
浅谈MySQL的回表和覆盖索引
MySQL比较常见的三种存储引擎:InnoDB、MyISAM、Memory。这三种引擎实现索引的方式不太相同,InnoDB、MyISAM使用的是B+树,Memory使用的是哈希索引。虽然InnoDB、MyISAM都使用的是B+树,但两者还是不完全相同的。InnoDB中,主键索引的B+树叶子节点存储的是整行数据。MyISAM主键索引的B+树叶子节点存储的是整行数据所在内存中的地址。回表&覆盖索引: 用一个简单的例子来说明。创建一张表emp,如下图。 给ena...原创 2020-09-11 14:25:30 · 1391 阅读 · 0 评论