搜尋碼
記錄的乙個或多個屬性
聚集索引/主索引
包含記錄的檔案按照搜尋碼指定的順序排序,有聚集索引的檔案稱為索引順序檔案
非聚集索引/輔助索引
搜尋碼指定的順序與檔案記錄的順序不同
索引項/索引記錄
由乙個搜尋碼值和指向搜尋碼值對應的記錄的指標的集合構成
稠密索引
每個搜尋碼值都有乙個索引項,稠密聚集索引中每個索引項包含搜尋碼值和指向第乙個具有搜尋碼值的記錄,稠密稀疏索引中每個索引項包含指向所有具有搜尋碼值的記錄
稀疏索引
只為搜尋碼的某些值建立索引,稀疏聚集索引中每個索引項包含搜尋碼值和指向第乙個具有搜尋碼的記錄,不存在稀疏非聚集索引
多級索引
索引的更新
刪除 稀疏索引:如果不包含索引則只刪記錄;如果包含索引,如果是唯一一條記錄則刪記錄使索引指向下乙個記錄,如果下乙個記錄已經有索引則刪除索引,如果不是唯一一條記錄則刪除,是第乙個則指標移向下乙個,否則直接刪記錄
優勢在於對於取值少的屬性儲存代價小,易於做交並補操作,在做這些操作時還可能需要存在位圖,有時在b+樹葉節點中存位圖表示
資料庫 資料庫索引
索引是儲存引擎用於快速找到記錄的一種資料結構。索引以檔案的形式儲存在磁碟中。索引可以包含乙個或多個列的值。儲存引擎查詢資料的時候,先在索引中找對應值,然後根據匹配的索引記錄找到對應的資料行。1.b tree索引 2.雜湊索引 myisam和innodb儲存引擎 只支援btree索引,也就是說預設使用...
資料庫mysql索引 資料庫 mysql索引
mysql 索引 mysql索引的建立對於mysql的高效執行是很重要的,索引可以大大提高mysql的檢索速度。打個比方,如果合理的設計且使用索引的mysql是一輛蘭博基尼的話,那麼沒有設計和使用索引的mysql就是乙個人力三輪車。索引分單列索引和組合索引。單列索引,即乙個索引只包含單個列,乙個表可...
資料庫索引
索引 索引列唯一索引 主鍵索引 聚簇索引和非聚簇索引 如何建立索引 如何刪除索引 使用索引可快速訪問資料庫表中的特定資訊。索引是對資料庫表中一列或多列的值進行排序的一種結構,例如 employee 表的姓 lname 列。如果要按姓查詢特定職員,與必須搜尋表中的所有行相比,索引會幫助您更快地獲得該資...