1. 程式人生 > >為什麼索引可以提高查詢速度

為什麼索引可以提高查詢速度

有這麼一個students表:
這裡寫圖片描述

我們執行一條sql語句:select * from students where name=’老頑童’
執行結果:
這裡寫圖片描述

如果我們沒有為name欄位建立索引,這條sql語句是從頭開始一條一條比較的,比較七次 找到了老頑童所在的這一條資料。

如果此時我們為name欄位加一個索引:create index nameIndex on students(name(20)); 其中nameIndex是索引的名稱,20是欄位的長度。此時可以理解為,將name這一列資料取出來,按照一定的方式重新組織一下(通常是b樹或者雜湊),將name欄位的每一個值,都與其所對應的表中那一條資料的地址做對映,使用雜湊,一次就可以定位到該條資料。