DB2索引類型介紹 DB2數據庫中都有哪些索引類型呢?下面就為您分類介紹DB2索引類型,如果您是剛剛接觸DB2數據庫的新人,不妨一看。 DB2索引類型: 在介紹索引類型前介紹一下關於稠密度的概念. 稠密度定義:在數據分布均勻的情況下,稠密度=數據分布的可能數/數據總條數。例如:表1中有索引1在列1上,其中列1的數據分布有10中,分別是1-10,數據接近均勻分布,總數據量為1000,則該索引的稠密度=100/1000=10%,稠密度最高為1。稠密度越小,索引的選擇性越大,查詢性能越好。 (1)非唯一索引 可以說大部分的索引的非唯一索引,這和數據的分布有關系,一般的數據都具有可重復性特性,所以他們不能被定義為唯一索引。非唯一索引可以使用命令: CREATE INDEX <IDX_NAME> ON <TAB_NAME> (<COLNAME>)來定義。 (2)唯一索引 唯一索引用來保證數據的唯一性,唯一索引一般性能要高於非唯一索引,這與索引的稠密度有關。唯一索引的稠密度永遠等於數據總條數的倒數。 (3)純索引 純索引的概念是相對與一般索引。如下方式表中有倆個字段,其中字段1是唯一主鍵,字段2為數據,實際的查詢中經常是select * from 表 where col1=? 這樣的查詢條件可以使用純索引來避免表查詢,具體創建命令為 CREATE UNIQUE INDEX <IDX_NAME> ON <TAB_NAME> (COL1_NAME) INCLUDE(COL2_NAME)。上述的語句的意思就是在col1上創建唯一索引,選擇包含col2的數據,這些附加的數據將與鍵存儲到一起,但是不作為索引的一部分,所以不被排序。純索引訪問是用來減少對數據頁的訪問,因為所需要的數據已經顯示在索引中了。 (4)群集索引 群集索引允許對數據頁采用更線性的訪問模式,允許更有效的預取,並且避免排序。群集索引是要求數據在插入時,做更多的操作,將相臨的數據條目放入相同的頁,使得查詢速度更快,因為每次訪問索引頁要將所有的索引條目都訪問完畢才移到下一頁,保證了緩存池中任何一個時刻都只有一個索引頁存在。 群集索引的特點: 提高查詢速度,數據頁以鍵的順序排列; 以鍵的順序掃描整張表; 插入和更新需要做更多的事情,不建議經常插入和更新的表上做群集索引