品易云推流 关闭
文章详情页
文章 > MySQL > mysql覆盖索引的使用注意

mysql覆盖索引的使用注意

头像

小妮浅浅

2021-08-17 09:51:422529浏览 · 0收藏 · 0评论

使用注意

1、索引必须存储列值。

覆盖索引不适用于所有索引类型。

2、MySQL只能使用B-TREE。

Hash和full-text索引没有存储值。

3、不同的存储引擎有不同的覆盖索引。

4、并不是所有的存储引擎都支持。

5、注意取出SELECT列表值所需的列。

如果要使用覆盖索引,一定要注意取出SELECT列表值所需的列,而不是SELECT*,因为如果把所有字段一起做索引,会导致索引文件过大,查询性能下降,不能用覆盖索引。

实例

#创建一张表
mysql> create table T (
ID int primary key,
k int NOT NULL DEFAULT 0,
s varchar(16) NOT NULL DEFAULT '',
index k(k))
engine=InnoDB;
#插入的数据
insert into T values(100,1, 'aa'),(200,2,'bb'),(300,3,'cc'),(500,5,'ee'),(600,6,'ff'),(700,7,'gg');

以上就是mysql覆盖索引的使用注意,希望对大家有所帮助。更多mysql学习指路:MySQL

推荐操作系统:windows7系统、mysql5.8、DELL G3电脑

关注

关注公众号,随时随地在线学习

本教程部分素材来源于网络,版权问题联系站长!

底部广告图