当前位置:网站首页 > 技术博客 > 正文

索引在数据库中的功能和作用



数据库索引的作用和原理

数据库索引是为了增加查询速度而对表字段附加的一种标识。很多人机械的理解索引的概念,认为增加索引只有好处没有坏处。其实远不是那样的,这里将其介绍尽量详细些。

首先明白为什么索引会增加速度,DB在执行一条Sql语句的时候,默认的方式是根据搜索条件进行全表扫描,遇到匹配条件的就加入搜索结果集合。如果我们对某一字段增加索引,查询时就会先去索引列表中一次定位到特定值的行数,大大减少遍历匹配的行数,所以能明显增加查询的速度。那么在任何时候都应该加索引么?这里有几个反例:1、如果每次都需要取到所有表记录,无论如何都必须进行全表扫描了,那么是否加索引也没有意义了。2、对非唯一的字段,例如“性别”这种大量重复值的字段,增加索引也没有什么意义。3、对于记录比较少的表,增加索引不会带来速度的优化反而浪费了存储空间,因为索引是需要存储空间的,而且有个致命缺点是对于update/insert/delete的每次执行,字段的索引都必须重新计算更新。

那么在什么时候适合加上索引呢?我们看一个Mysql手册中举的例子,这里有一条sql语句:

版权声明


相关文章:

  • c++ 结构体指针2025-07-28 20:01:03
  • 10kv并联电容器接线图2025-07-28 20:01:03
  • mysql数据库设计实例2025-07-28 20:01:03
  • springboot中的yml怎么读取2025-07-28 20:01:03
  • vue后端管理系统2025-07-28 20:01:03
  • 数字图像处理实验怎么做2025-07-28 20:01:03
  • 简述uboot的作用2025-07-28 20:01:03
  • c语言三维图代码2025-07-28 20:01:03
  • 图形验证码redis存储2025-07-28 20:01:03
  • c语言bsearch函数2025-07-28 20:01:03