自己對mysql 索引理解

2021-06-29 02:06:18 字數 461 閱讀 8093

首先明確幾個觀點

1mysql 是紅黑樹,具體是什麼暫時不去考慮,可以將其當做鍊錶看(只是為了解釋索引,真是情況不可以這樣當)

2mysql 資料分塊儲存。

可以這樣舉例

mysql 表的結構如下

idusername

實際的儲存方式是這樣的

(1,a)(2,b) (3,a) (4,d) (5,e)

當前我們要查詢id=5的資料  在沒有索引的情況下 要進行5次比較最終得到結果資料

現在為id 新增索引,新增索引會引入另一張表

(1,point->((1,a)))........

表裡儲存的內容是被作為主鍵的字段值,以及指向真實資料的指標,在插入的時候就會是順序插入 再用id進行查詢的時候就會去查詢這張索引表,

這張索引表有序,就可以使用二分查詢進行這樣的話查詢就變為了log時間的 logn 和n的效率差距在資料越大的時候會越明顯

mysql索引理解

說到mysql,很多面試官會問mysql的底層儲存結構,mysql的儲存引擎,什麼是聚簇索引之類的問題 我這邊就好好寫寫這些是什麼。首先mysql底層結構是啥,b tree。很多人都會說這個,然後呢這個是怎麼實現的,開始懵逼的,只能記得一些模稜兩可的答案,我這邊其實也差不多,基本屬於模模糊糊,看一遍...

mysql覆蓋索引理解

覆蓋索引概念 mysql可以利用索引返回select 列表中的字段。而不必根據索引再次讀取資料檔案。包含所有滿足查詢需要的資料的索引成為覆蓋索引 covering index 也就是平時所說的不需要回表操作。判斷標準 在查詢前面使用explain,可以通過輸出的extra列來判斷,對於乙個索引覆蓋查...

正排索引和倒排索引理解詳解

叮嘟!這裡是小啊嗚的學習課程資料整理。好記性不如爛筆頭,今天也是努力進步的一天。一起加油高階吧!文件 單詞1 單詞2 單詞1 出現的次數 單詞出現的位置 單詞2 單詞2出現的位置 正排索引 在搜尋欄輸入id查詞條 已知id 單詞1 文件1 文件2,文件3 單詞2 文件1,文件2 倒排索引 將搜尋框中...