首頁  >  文章  >  資料庫  >  mysql如何新增多個btree索引

mysql如何新增多個btree索引

anonymity
anonymity原創
2019-05-27 15:11:524448瀏覽

目前大部分資料庫系統及檔案系統都採用B-Tree或其變種B Tree作為索引結構。

1、B 樹是一個平衡的多叉樹,從根節點到每個葉子節點的高度值不超過1,而且同層級的節點間有指標相互連結

2 、在B 樹上的常規檢索,從根節點到葉子節點的搜尋效率基本上相當,不會出現大幅波動,而且基於索引的順序掃描時,也可以利用雙向指標快速左右移動,效率非常高。

mysql如何新增多個btree索引

在mysql中,索引可以有效的提高查詢效率,但在實際專案中有時候即使在where條件都加上索引,也不一定能夠使用到索引

舉栗子:where id=3 and price>100;//查詢id為3,100元以上的商品(id,price 分別為新增索引)

 誤解:只能用上id或price其中一個,因為是獨立的索引,同時只能用上一個。

聯合索引:在多列同時建立索引後,需要滿足左前綴原則,才用到索引

 以index(a,b,c)為例。 (注意和順序有關)

語句| 是否使用索引

#where a=3 是,只使用了a列

where a=3 and =5 是,使用了ab列

where a=3  and b=4 and c=5 是,使用了abc

where b=3 or c=4 否因為跳過a

where a=3 and c =4 a用到索引,c不能

where a=3 and b like 'hello%' a用到了,b部分用到

以上是mysql如何新增多個btree索引的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn