1. 程式人生 > >索引的分類,優缺點,使用

索引的分類,優缺點,使用

聚簇索引 連接 避免 tex 16px href 復合索引 類型 性別

索引的分類

主鍵索引:某一個屬性組能唯一標識一條記錄,主鍵索引只能有一個

唯一索引:避免同一個表中某數據列中的值重復,唯一索引可有多個

常規索引:快速定位特定數據,應加在查詢條件的字段,不易添加太多常規索引,影響數據的插入,刪除和修改操作

復合索引:指多個字段上創建的索引,只有復合索引的第一個字段出現在查詢條件中,該索引才可能被使用,因此將應用頻度高的字段,放置在復合索引的前面,會使系統最大可能地使用此索引,發揮索引的作用

關於聚集索引和非聚集索引:https://blog.csdn.net/yue_hu/article/details/80634274

索引的優點

① 通過創建索引,可以在查詢的過程中,提高系統的性能

② 通過創建唯一性索引,可以保證數據庫表中每一行數據的唯一性

③ 在使用分組和排序子句進行數據檢索時,可以減少查詢中分組和排序的時間

索引的缺點

① 創建索引和維護索引要耗費時間,而且時間隨著數據量的增加而增大

② 索引需要占用物理空間,如果要建立聚簇索引,所需要的空間會更大

③ 在對表中的數據進行增加刪除和修改時需要耗費較多的時間,因為索引也要動態地維護

應該在哪些列上創建索引

① 經常需要搜索的列上

② 作為主鍵的列上

③ 經常用在連接的列上,這些列主要是一些外鍵,可以加快連接的速度

④ 經常需要根據範圍進行搜索的列上

⑤ 經常需要排序的列上

⑥ 經常使用在where子句上面的列上

不應該在哪些列上創建索引

① 查詢中很少用到的列

② 對於那些具有很少數據值的列.比如人事表的性別列,bit數據類型的列

③ 對於那些定義為text,image的列.因為這些列的數據量相當大

④ 當對修改性能的要求遠遠大於搜索性能時.因為當增加索引時,會提高搜索性能,但是會降低修改性能

索引的分類,優缺點,使用