什麼是聚集索引

2021-06-09 19:57:21 字數 641 閱讀 3117

一種索引,該索引中鍵值的邏輯順序決定了表中相應行的物理順序。

聚集索引確定表中資料的物理順序。聚集索引類似於**簿,按姓氏排列資料。由於聚集索引規定資料在表中的物理儲存順序,因此乙個表只能包含乙個聚集索引。但該索引可以包含多個列(組合索引),就像**簿按姓氏和名字進行組織一樣。

聚集索引對於那些經常要搜尋範圍值的列特別有效。使用聚集索引找到包含第乙個值的行後,便可以確保包含後續索引值的行在物理相鄰。例如,如果應用程式執行的乙個查詢經常檢索某一日期範圍內的記錄,則使用聚集索引可以迅速找到包含開始日期的行,然後檢索表中所有相鄰的行,直到到達結束日期。這樣有助於提高此類查詢的效能。同樣,如果對從表中檢索的資料進行排序時經常要用到某一列,則可以將該錶在該列上聚集(物理排序),避免每次查詢該列時都進行排序,從而節省成本。

當索引值唯一時,使用聚集索引查詢特定的行也很有效率。例如,使用唯一雇員 id 列 emp_id 查詢特定雇員的最快速的方法,是在 emp_id 列上建立聚集索引或 primary key 約束。

適用於聚集索引的情況包括:

1、含有大量非重複值的列。

2、使用between,>,>=,《或<=返回乙個範圍值的列

3、被連續訪問的列

4、返回大型結果集的查詢

5、經常被使用連線或group by子句的查詢訪問的列

什麼是聚集索引 非聚集索引 覆蓋索引

本文為筆者近來學習的筆記,在解釋覆蓋索引之前勢必簡單回顧一下索引基本知識?索引是資料庫管理系統中乙個排序的資料結構,以協助快速查詢 更新資料庫表中資料。通常模擬為圖書目錄。聚集索引中鍵值的邏輯順序決定了表中相應行的物理順序,例如 本,索引為 姓,名 資料值為 號,在乙個表中通常只有乙個聚集索引,聚集...

聚集索引 非聚集索引

通常情況下,建立索引是加快查詢速度的有效手段。但索引不是萬能的,靠索引並不能實現對所有資料的快速訪問。事實上,如果索引策略和資料檢索需求嚴重不符的話,建立索引反而會降低查詢效能。因此在實際使用當中,應該充分考慮到索引的開銷,包括磁碟空間的開銷及處理開銷 如資源競爭和加鎖 例如,如果資料頻繁的更新或刪...

聚集索引和非聚集索引

聚集索引和非聚集索引 一 聚集索引和非聚集索引 聚集索引和非聚集索引的根本區別是表記錄的排列順序和與索引的排列順序是否一致,聚集索引表記錄的排列順序與索引的排列順序一致,優點是查詢速度快,因為一旦具有第乙個索引值的紀錄被找到,具有連續索引值的記錄也一定物理的緊跟其後。聚集索引的缺點是對錶進行修改速度...