小編給大家分享一下MySQL添加多個btree索引的方法,希望大家閱讀完這篇文章后大所收獲,下面讓我們一起去探討吧!
吉林ssl適用于網站、小程序/APP、API接口等需要進行數(shù)據傳輸應用場景,ssl證書未來市場廣闊!成為成都創(chuàng)新互聯(lián)公司的ssl證書銷售渠道,可以享受市場價格4-6折優(yōu)惠!如果有意向歡迎電話聯(lián)系或者加微信:18980820575(備注:SSL證書合作)期待與您的合作!
目前大部分數(shù)據庫系統(tǒng)及文件系統(tǒng)都采用B-Tree或其變種B+Tree作為索引結構。
1、B+樹是一個平衡的多叉樹,從根節(jié)點到每個葉子節(jié)點的高度值不超過1,而且同層級的節(jié)點間有指針相互鏈接
2、在B+樹上的常規(guī)檢索,從根節(jié)點到葉子節(jié)點的搜索效率基本相當,不會出現(xiàn)大幅波動,而且基于索引的順序掃描時,也可以利用雙向指針快速左右移動,效率非常高。
在mysql中,索引可以有效的提高查詢效率,但在實際項目中有時候即使在where條件都加上索引,也不一定能夠使用到索引
舉個栗子:where id=3 and price>100;//查詢id為3,100元以上的商品(id,price 分別為添加索引)
誤區(qū):只能用上id或price其中一個,因為是獨立的索引,同時只能用上一個。
聯(lián)合索引:在多列同時創(chuàng)建索引后,需要滿足左前綴原則,才用到索引
以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索引的方法有了一定的了解,想了解更多相關知識,歡迎關注創(chuàng)新互聯(lián)行業(yè)資訊頻道,感謝各位的閱讀!