18
JUL
【译】SQL 索引是如何工作的
这篇文章通过图文解析深入浅出地揭示了数据库索引的底层逻辑,从索引的物理存储结构到查询性能优化的完整链条。作者以SQL Server的执行计划为切入点,通过对比聚集索引的有序数据存储(EmployeeId作为聚集键)与非聚集索引的逻辑键值定位(Name字段索引),清晰展示了两种索引在数据检索时的协作关系——非聚集索引如同目录指引,最终需要借助聚集索引定位实际数据。文章通过百万级数据的查询成本对比(100万行扫描vs 1次键查找),直观呈现了索引扫描(Scan)与索引查找(Seek)的性能天差地别。特别值得关注的是对执行计划中Index Seek、Key Lookup和Nested Loops操作的逐层拆解,揭示了非聚集索引如何通过"二级查找"机制定位数据。这种从存储结构到查询优化的系统性讲解,不仅解答了"为什么主键默认有索引"等常见疑惑,更启发思考如何通过索引设计平衡查询效率与写入成本,为数据库性能优化提供了可落地的理论框架。--Qwen3