99999久久久久久亚洲,欧美人与禽猛交狂配,高清日韩av在线影院,一个人在线高清免费观看,啦啦啦在线视频免费观看www

熱線電話:13121318867

登錄
2022-09-13 閱讀量: 791
mysql中索引的作用

1.索引是什么,首先我們可以舉個(gè)例子,字典大家應(yīng)該都使用過(guò),我們可以使用目錄快速定位到所要查找的內(nèi)容,那么索引跟目錄的作用類似,在數(shù)據(jù)庫(kù)表記錄中,利用索引,可以快速過(guò)濾查找到數(shù)據(jù)記錄。

2. 索引類型分類:

普通索引--加快查詢速度;

唯一索引--加快查詢速度,并且可以限制列值的唯一性,允許為空, 唯一索引包括聯(lián)合唯一索引,多列形成的唯一索引,這些列可 以唯一確定一條表記錄,可以為空;

全文索引--主要針對(duì)文本的內(nèi)容進(jìn)行分詞,加快查詢速度;

聯(lián)合索引--多列組成的索引,查詢效率提升高于多個(gè)單列索引合并的效率;

主鍵索引--主鍵唯一性,加快查詢速度,不能為空.

3.索引結(jié)構(gòu)分類,索引有很多分類,例如B-tree索引,哈希索引,全文索引等等,索引的實(shí)現(xiàn)是在存儲(chǔ)引擎層,并不是在后端服務(wù) 器層,所以不同的存儲(chǔ)引擎支持的索引結(jié)構(gòu)也不一定一樣.

B-tree索引-- B-tree 索引普遍存在于存儲(chǔ)引擎中,他使用B-tree數(shù)據(jù)結(jié)構(gòu)來(lái)存儲(chǔ)數(shù)據(jù),如果對(duì)樹(shù)形數(shù)據(jù)結(jié)構(gòu)比較了解的話,就知道B-tree索引所帶來(lái)的好處了,他的每個(gè)葉子節(jié)點(diǎn)都會(huì)包含下一個(gè)節(jié)點(diǎn)的指針,非常方便查詢數(shù)據(jù),B-tree 適用于全鍵值,鍵值范圍,或者前綴查找.

哈希索引--哈希索引基于哈希表實(shí)現(xiàn),對(duì)于每一行數(shù)據(jù),存儲(chǔ)引擎會(huì)對(duì)所有的索引列計(jì)算一個(gè)哈希碼,然后存儲(chǔ)引擎會(huì)基于這個(gè)哈希碼來(lái)查找數(shù)據(jù).

全文索引--全文索引在幾種索引結(jié)構(gòu)類型中比較特殊,他查找的是文本中關(guān)鍵詞.

4.索引的正確使用, 索引是建立在系統(tǒng)文件上的,會(huì)占用一定的內(nèi)存空間,另外數(shù)據(jù)在更新的時(shí)候也會(huì)去維護(hù)索引,消耗內(nèi)存,所以索引一定要正確的使用,索引并不是越多越好,要根據(jù)具體的查詢業(yè)務(wù)來(lái)規(guī)劃索引的建立。

建議不要使用索引的幾種情況:

a.區(qū)分度不是很大的字段,例如 性別 sex

b.頻繁更新的字段

c.字符串類型的字段 或者 文本類型的字段

d. 不在where列中出現(xiàn)的索引

索引失效的幾種情況:

a.查詢列中有函數(shù)計(jì)算


b. 查詢列中有模糊查詢,"%cloum",可以使用"cloum%" 代替,如果要使用"%column%",那么select 列中是索引列


c. 如果查詢條件中有or, 索引會(huì)失效,除非所有條件都加上索引


d.使用不等于(!= 或者 <>)


e. is null 或者 is not null


f. 字符串不加引號(hào),會(huì)導(dǎo)致索引失效


g.最左原則,聯(lián)合索引中會(huì)遵循最左原則,即如果要使用聯(lián)合索引,那么前面的索引列一定要包含


轉(zhuǎn)載CSDN EllisTian--https://blog.csdn.net/T2080305

79.9912
0
關(guān)注作者
收藏
評(píng)論(0)

發(fā)表評(píng)論

暫無(wú)數(shù)據(jù)
推薦帖子