MySQL 索引必知

                                                        

MySQL 索引必知必会

什么是索引?

在关系数据库中,索引是一种单独的、物理的对数据库表中一列或多列的值进行排序的一种存储结构,它是某个表中一列或若干列值的集合和相应的指向表中物理标识这些值的数据页的逻辑指针清单。

例如:有一张 student 表,其中有 5W 条记录,记录这 5W 个学生的信息。其中有一个 sno 的字段记录每个学生的学号,现在想要查询出学号为 XXXX 的人的信息。

在没有索引的情况下,我们需要一条一条的遍历表中的数据。在查询到匹配的数据后,先将该数据放入到结果集中,再继续查询直到将全部的数据查询完毕。

索引的优点

  1. 索引的最明显的优点就是减少查询的速度,提高数据库的效率。

    • 通过索引查询可以缩短数据检索的时间

    • 通过索引可以加快表与表之间的关联查询时间

  2. 为排序或者分组的字段增加索引,可以提升排序和分组的效率。

 索引的缺点

  1. 创建索引的时间成本会随着数据量的增大而增大。

  2. 索引创建之后,在对数据库表中的数据进行增、删、改等操作之后,相应的索引也需要进行维护,降低了数据维护的速度。

  3. 从本质上来讲,索引是通过空间来换取时间。也就是说,在我们缩短查询的时间成本的同时,势必要牺牲磁盘空间成本来存储索引。

发布了60 篇原创文章 · 获赞 58 · 访问量 14万+

猜你喜欢

转载自blog.csdn.net/yihuliunian/article/details/105387362
今日推荐