索引的优缺点,何时用或不用索引
-
什么是索引?
索引是对数据库表中的一列或多列值进行排序的一种结构,使用索引可以快速访问数据库表中的特定信息。
-
索引的作用?
索引相当于图书上的目录,可以根据目录上的页码快速找到所需的内容,提高性能(查询速度)
-
优点:
通过创建唯一性索引,可以保证数据库表中的每一行数据的唯一性。
可以加快数据的检索速度
可以加速表与表之间的连接
在使用分组和排序进行检索的时候,可以减少查询中分组和排序的时间
-
缺点
创建索引和维护索引要耗费时间,这种时间随着数据量的增加而增加。
索引需要占用物理空间,数据量越大,占用空间越大
会降低表的增删改的效率,因为每次增删改索引,都需要进行动态维护
-
什么时候需要创建索引
-
主键自动建立唯一索引
-
频繁作为查询条件的字段应该创建索引
-
查询中排序的字段创建索引将大大提高排序的速度(索引就是排序加快速查找
-
查询中统计或者分组的字段;
-
-
什么时候不需要创建索引
-
频繁更新的字段不适合创建索引,因为每次更新不单单是更新记录,还会更新索引,保存索引文件
-
where条件里用不到的字段,不创建索引;
-
表记录太少,不需要创建索引;
-
经常增删改的表;
-
-
标签:
数据库
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 单元测试从入门到精通
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 上周热点回顾(3.3-3.9)
· winform 绘制太阳,地球,月球 运作规律