mysql里的索引是什么意思_数据库中的索引是什么意思?有什么用途

展开全部

索引是一种单独的、物理的对数据库表中一列或多列的值进行排序32313133353236313431303231363533e59b9ee7ad9431333363393033的一种存储结构,它是某个表中一列或若干列值的集合和相应的指向表中物理标识这些值的数据页的逻辑指针清单。索引的作用相当于图书的目录,可以根据目录中的页码快速找到所需的内容。

一个索引是存储的表中一个特定列的值数据结构(最常见的是B-Tree,还有哈希表索引和R-tree)。索引是在表的列上创建。所以,要记住的关键点是索引包含一个表中列的值,并且这些值存储在一个数据结构中。请记住记住这一点:索引是一种数据结构

使用索引的全部意义就是通过缩小一张表中需要查询的记录(行)的数目来加快搜索的速度。

假设有一张学生名单表,有一百条数据。要查询其中名字为 小明 的学生。

一般采取select * from students where name ='小明';由于我们想要得到每一个名字为小明的学生信息,在查询到第一个符合条件的行后,不能停止查询,因为可能还有其他符合条件的行。所以,必须一行一行的查找直到最后一行-这就意味数据库不得不检查上千行数据才能找到所以名字为小明 的学生。这就是所谓的全表扫描。

假设我们在 name这一列上创建一个B-Tree索引。当我们用SQL查找名字是‘小明 ’的学生时,不需要再扫描全表。而是用索引查找去查找名字为‘小明 ’的学生,因为索引已经按照按字母顺序排序。索引已经排序意味着查询一个名字会快很多,因为名字首字母为‘小’的学生都是排列在一起的。另外重要的一点是,索引同时存储了表中相应行的指针以获取其他列的数据。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值