[MySQL] 索引与性能(3)- 覆盖索引
生活随笔
收集整理的這篇文章主要介紹了
[MySQL] 索引与性能(3)- 覆盖索引
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
覆蓋索引是指索引的葉子節點已包含所有要查詢的列,因此不需要訪問表數據,能極大地提高性能。覆蓋索引對InnoDB的聚簇索引表特別有用,因為可以避免InnoDB二級索引的二次查詢。MySQL里只有B樹索引能做覆蓋索引,因為必須要存儲索引列的值,而哈希索引、空間索引、全文索引不可以。
當發起一個覆蓋索引的查詢時,在explain的Extra列可以看到Using Index,下面看一個例子,在表users有一個多列索引(login_id,status),執行計劃如下
[sql]?view plaincopy print?
[sql]?view plaincopy print?
從上面我們可以知道,雖然二級索引的定義沒有包含主鍵,但依然可以使用覆蓋索引。
from:?http://blog.csdn.net/dbanote/article/details/16822687
總結
以上是生活随笔為你收集整理的[MySQL] 索引与性能(3)- 覆盖索引的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: mysql高效索引之覆盖索引
- 下一篇: MySQL 覆盖索引