1. 程式人生 > 其它 >簡單記錄:索引

簡單記錄:索引

B+樹

一種索引結構,葉子結點有連續的指標,因為是有連續性的,所以比較適合範圍查詢和模糊查詢。

Hash

雜湊桶結構,陣列上有連結串列,通過雜湊演算法可以迅速直接的定位到值,但因為hash演算法的侷限性並不適合範圍查詢和模糊查詢。

普通索引 & 主鍵索引

普通索引:葉子結點儲存的是相應的主鍵的值,之後再通過主鍵索引去查詢對應的行記錄。需要查兩次

主鍵索引:葉子結點儲存的是整個行記錄,可以通過主鍵直接查詢到所有的記錄

回表

上面提到的普通索引要查兩次,先通過普通索引查到主鍵,再通過主鍵索引才能查到對應的行記錄

這一過程經歷了兩次查詢,就是回表,相對來說會影響查詢的效率

覆蓋索引

如何避免回表?

可以將被查詢的欄位建立為普通索引,這樣第一次查詢時直接就獲取到了,不再需要回表查詢

不要使用Select *,這樣必然會再回表去查一次