当前位置:Gxlcms > mysql > Mysql-索引覆盖

Mysql-索引覆盖

时间:2021-07-01 10:21:17 帮助过:22人阅读

索引是一个利于查找的数据结构,而且还缓存在内存中,用索引查找出物理行地址非常快,但是从物理行中提取出(回行)需要的字段值,就会慢一点了。

查询索引是快的,利用索引从物理磁盘中找到要的所有数据(回行)是慢的。

535.png


如上图,索引是usename,如果select的字段有id,username,age..那么得去物理行提取数据;如果select id 那么索引里就存着呢,不用去找啦直接就满足了。

总结:查询的内容正好在索引中就有,不需要回行查找,这种情况叫做索引覆盖


536.png

如果出现了上边Using index 部分,就表示使用了覆盖索引。

innodb引擎在覆盖索引上面更进一步:

innodb引擎的所有储存了主键ID,事务ID,回滚指针,非主键ID,

他的查询就会是非主键ID也可覆盖来取得主键ID。

以上就是Mysql-索引覆盖的内容,更多相关内容请关注PHP中文网(www.gxlcms.com)!

人气教程排行