溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

mysql添加多個(gè)btree索引的方法

發(fā)布時(shí)間:2020-08-25 14:04:38 來(lái)源:億速云 閱讀:786 作者:小新 欄目:MySQL數(shù)據(jù)庫(kù)

小編給大家分享一下mysql添加多個(gè)btree索引的方法,希望大家閱讀完這篇文章后大所收獲,下面讓我們一起去探討吧!

目前大部分?jǐn)?shù)據(jù)庫(kù)系統(tǒng)及文件系統(tǒng)都采用B-Tree或其變種B+Tree作為索引結(jié)構(gòu)。

1、B+樹(shù)是一個(gè)平衡的多叉樹(shù),從根節(jié)點(diǎn)到每個(gè)葉子節(jié)點(diǎn)的高度值不超過(guò)1,而且同層級(jí)的節(jié)點(diǎn)間有指針相互鏈接

2、在B+樹(shù)上的常規(guī)檢索,從根節(jié)點(diǎn)到葉子節(jié)點(diǎn)的搜索效率基本相當(dāng),不會(huì)出現(xiàn)大幅波動(dòng),而且基于索引的順序掃描時(shí),也可以利用雙向指針快速左右移動(dòng),效率非常高。

mysql添加多個(gè)btree索引的方法

在mysql中,索引可以有效的提高查詢效率,但在實(shí)際項(xiàng)目中有時(shí)候即使在where條件都加上索引,也不一定能夠使用到索引

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

誤區(qū):只能用上id或price其中一個(gè),因?yàn)槭仟?dú)立的索引,同時(shí)只能用上一個(gè)。

聯(lián)合索引:在多列同時(shí)創(chuàng)建索引后,需要滿足左前綴原則,才用到索引

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

語(yǔ)句 | 是否使用索引

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 否因?yàn)樘^(guò)a

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

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

看完了這篇文章,相信你對(duì)mysql添加多個(gè)btree索引的方法有了一定的了解,想了解更多相關(guān)知識(shí),歡迎關(guān)注億速云行業(yè)資訊頻道,感謝各位的閱讀!

向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI