6-1:何謂索引

索引的功能

索引會加快從該資料表或檢視中擷取資料列的速度。這些索引鍵儲存B樹結構中,可以快速有效地找到與索引鍵值相關的一或多個資料列。例如:

Select * from Emp where ename='李小英';

若某公司的員工資料表Emp如下:

姓名欄位ename未建立索引排序,則只能循序搜尋;若姓名欄位ename已建立索引排序(如下圖),可利用二元搜尋法搜尋資料:

索引的優缺點

  1. 特性:以空間換取時間,以平常整理(insert、update)資料花費的小段時間,換取查詢(select)資料的速度。
  2. 優點:加快查詢速度
  3. 缺點:建立索引的欄位很多時,甚至比原資料表還佔用空間,同時為了維持索引表的排序,資料異動時花費的時間較多。