如書本索引,指引 DBMS 快速定位列。建立索引後,以該欄位為條件查詢大幅加快。
CREATE INDEX index_name ON table_name (column_name);
CREATE INDEX OID_IDX ON ANTIQUEOWNERS (OWNERID);
CREATE INDEX NAME_IDX ON ANTIQUEOWNERS (OWNERLASTNAME, OWNERFIRSTNAME);
依宣告順序排序:先姓氏、再名字。
DROP INDEX OID_IDX;
同樣可刪除資料表:DROP TABLE。
部分 DBMS 不自動強制主鍵唯一性。建立唯一索引可確保:
CREATE UNIQUE INDEX OID_IDX ON ANTIQUEOWNERS (OWNERID);
OWNERID 會報錯PRIMARY KEY 或 UNIQUE 約束的底層實作| 類型 | 特性 | 適用場景 |
|---|---|---|
| 叢集索引 | 資料實際儲存順序 = 索引順序,每表僅一個 | 範圍查詢、排序、主鍵 |
| 非叢集索引 | 索引指向資料列,可建多個 | 精確查詢、覆蓋索引 |
| 複合索引 | 多欄位組合,順序敏感 | 多欄位聯合篩選/排序 |
| 覆蓋索引 | 查詢所需欄位全在索引中 | 避免查找資料頁,極速 |