如同書末索引加速查找,資料表索引可將大表查詢從數小時縮短至數分鐘。但索引佔用額外空間(叢集索引約1.2倍資料大小),記憶體或磁碟不足時需權衡。可用sp_spaceused查看索引空間佔用。
| 特性 | 叢集索引 | 非叢集索引 |
|---|---|---|
| 葉層內容 | 實際資料頁 | 指向資料列的書籤(RID或叢集鍵) |
| 資料物理順序 | 與索引邏輯順序一致 | 無關 |
| 每表數量 | 僅一個 | 最多249個 |
| 範圍查詢 | 極快(掃描連續頁) | 需書籤查找,較慢 |
| 插入/更新開銷 | 較低 | 需同步更新所有非叢集索引 |
DATETIME時間欄位、IDENTITY主鍵。需按「時間範圍」與「用戶名」雙維度查詢 → 時間欄位建叢集索引(利於範圍掃描),用戶名建非叢集索引(利於點查詢)。
兩類索引皆支援UNIQUE約束與多欄位複合索引。複合叢集索引亦可建立,但須謹慎評估鍵值長度對非叢集索引書籤大小的影響。