Debian上SQL Server的索引优化策略
一 索引设计原则
二 索引类型与适用场景
| 索引类型 | 关键特性 | 典型场景 |
|---|---|---|
| 聚集索引(CLUSTERED) | 决定表中数据的物理存储顺序;每张表仅能有一个;范围查询与排序收益明显 | 主键或高频范围/排序查询(如日期范围、按某序列范围扫描) |
| 非聚集索引(NONCLUSTERED) | 不改变数据物理顺序;通过指针回表;可建多个 | 高频筛选条件、外键、连接列,且需避免键过长 |
| 唯一索引(UNIQUE) | 强制列值唯一 | 业务唯一约束、去重检索 |
| 包含列索引(INCLUDE) | 在索引键外附带非键列,形成覆盖索引 | SELECT 列表包含多列但仅少数列参与筛选/连接 |
| 过滤索引(FILTERED) | 只为满足过滤谓词的行建立索引 | 高选择性子集查询(如状态=‘ACTIVE’)以减少索引体积与维护成本 |
三 维护与统计信息管理
四 查询写法与索引利用
五 在Debian上的实施与监控