用戶可以在多個列上建立索引,這種索引叫做複合索引(組合索引);複合索引在資料庫操作期間所需的開銷更小,可以代替多個單一索引;同時有兩個概念叫做窄索引和寬索引,窄索引是指索引列為1-2列的索引,寬索引也就是索引列超過2列的索引;設計索引的一個重要原則就是能用窄索引不用寬索引,因為窄索引往往比組合索引更有效;
基本介紹
- 中文名:複合索引
注意事項
1、對於複合索引,在查詢使用時,最好將條件順序按找索引的順序,這樣效率最高;
select * from table1 where col1=A AND col2=B AND col3=D
如果使用 where col2=B AND col1=A 或者 where col2=B 將不會使用索引
2、何時是用複合索引
根據where條件建索引是極其重要的一個原則;
注意不要過多用索引,否則對表更新的效率有很大的影響,因為在操作表的時候要化大量時間花在創建索引中
3、複合索引會替代單一索引么
如果索引滿足窄索引的情況下可以建立複合索引,這樣可以節約空間和時間
如果索引滿足窄索引的情況下可以建立複合索引,這樣可以節約空間和時間