数据库索引为什么会提高查询速度?

2025-03-11 00:16:47
推荐回答(3个)
回答1:

你的理解其实没啥问题。索引就是通过事先排好序,从而在查找时可以应用二分查找等高效率的算法。
一般的顺序查找,复杂度为O(n),而二分查找复杂度为O(log2n)。当n很大时,二者的效率相差及其悬殊。

举个例子:
表中有一百万条数据,需要在其中寻找一条特定id的数据。如果顺序查找,平均需要查找50万条数据。而用二分法,至多不超过20次就能找到。二者的效率差了2.5万倍!

回答2:

首先是建立在内存上。且一般只有数字主键时快的明显一些。

回答3:

比如说 一本书 你要查 一段数据 你是 去把整本书翻一遍 快呢 还是 从目录开始找 快呢 ,索引就是这个 目录了。