組合索引的索引結構

2021-10-22 18:45:23 字數 583 閱讀 2776

在網路上有很多mysql的索引的結構的介紹,相信你對索引的結構已經非常了解了,關於組合索引呢?組合索引是在b+樹中的結構是怎麼樣的?怎麼排序的?索引中相同的值,儲存的id是什麼結構?在本篇文章中就跟你一一說明

一、組合索引的圖示

話不多說,直接上圖

上面是根據身高年齡建立的組合索引(height,age)

二、組合索引在b+樹中的排序

以上圖索引為例,組合索引在b+樹中是兩個字段進行排序的,索引的key是身高和年齡,值是主鍵id,先按照身高排序,身高一樣的按照年齡排序

三、索引的key相同結構是怎麼樣的

如果索引的key相同,比如都是身高176,年齡29,是三條索引記錄呢?還是一條索引記錄下面有三個主鍵的列表呢?

上圖中有三個索引的key相同的,身高:176,年齡29,他們在索引頁中的結構與主鍵id是一一對應的關係,是三條索引記錄。

注意:在非主鍵索引中,非主鍵索引是有序的,相同的非主鍵索引,還會按照主鍵排序,所以你建立乙個非主鍵索引就相當於建立了非主鍵和主鍵的組合索引

mysql的組合索引 mysql 組合索引

mysql單列索引是我們使用mysql資料庫中經常會見到的,mysql單列索引和組合索引的區別可能有很多人還不是十分的了解,下面就為您分析兩者的主要區別,供您參考學習。為了形象地對比兩者,再建乙個表 create table myindex i testid int not null auto in...

復合索引(組合索引)

使用者可以在多個列上建立索引,這種索引叫做復合索引 組合索引 1.何時是用復合索引 在where條件中字段用索引,如果用多字段就用復合索引。比如在查詢位址的時候,經常要求輸入省,市資訊,如果同時在省,市上建立索引,將會提高查詢速度。2.對於復合索引,在查詢使用時,最好將條件順序按找索引的順序,這樣效...

復合索引(組合索引)

使用者可以在多個列上建立索引,這種索引叫做復合索引 組合索引 1.何時是用復合索引 在where條件中字段用索引,如果用多字段就用復合索引。比如在查詢位址的時候,經常要求輸入省,市資訊,如果同時在省,市上建立索引,將會提高查詢速度。2.對於復合索引,在查詢使用時,最好將條件順序按找索引的順序,這樣效...