时间:2021-07-01 10:21:17 帮助过:24人阅读
1000 条数据
如果是顺序查找,最坏的情况是查找 1000 次(恰好要找的在最后一条)
如果对其排序后用二分法查找,最坏的情况也只需查找 10 次(2 的 10 次方为 1024)
显然后者要优于前者。这就是索引的力量
你已经注意到了,二分法查找是需要对数据排序的,而排序是需要时间的
虽然索引文件记录下了排序的结果,但一旦数据发生了变化(插入、修改、删除)就必须重新建立索引文件
所以如果每个字段都有索引的话,这个开销是可想而知的
因此,索引会加快查询的速度,减慢插入、修改、删除的速度
你需要根据具体情况来寻找平衡点
1000 条数据
如果是顺序查找,最坏的情况是查找 1000 次(恰好要找的在最后一条)
如果对其排序后用二分法查找,最坏的情况也只需查找 10 次(2 的 10 次方为 1024)
显然后者要优于前者。这就是索引的力量
你已经注意到了,二分法查找是需要对数据排序的,而排序是需要时间的
虽然索引文件记录下了排序的结果,但一旦数据发生了变化(插入、修改、删除)就必须重新建立索引文件
所以如果每个字段都有索引的话,这个开销是可想而知的
因此,索引会加快查询的速度,减慢插入、修改、删除的速度
你需要根据具体情况来寻找平衡点
索引也需要占空间 每一次记录变更都要对索引做修改 全部字段是索引 代价太大
等同于ID 我的理解你说的应该是主键 主键也是一个索引 如果ID不是主键 也是不快的
google 索引下吧
索引也需要占空间 每一次记录变更都要对索引做修改 全部字段是索引 代价太大
等同于ID 我的理解你说的应该是主键 主键也是一个索引 如果ID不是主键 也是不快的
google 索引下吧