1. 程式人生 > >【學習筆記】資料庫優化之索引(聚簇索引&非聚簇索引)

【學習筆記】資料庫優化之索引(聚簇索引&非聚簇索引)

索引:對資料庫表中一列或多列的值進行排序的一種結構,通過索引可快速訪問資料庫表中的特定資訊,即通過索引對資料列的值進行結構化排序。 其中,索引包含聚簇索引和非聚簇索引

聚簇索引的順序就是資料的物理儲存順序 非聚簇索引的索引順序與資料物理排列順序無關 所以一個表最多隻能有一個聚簇索引

【聚簇索引】 在網上很多都有舉到的例子,新華字典,聚簇索引就類似於拼音查詢,整本字典的排序都是按照A-Z的順序排序的,如果要找一個“pai”字,那麼它只會在“P”開頭的字母範圍內,而我們查詢時,只需要從P開始查詢就可以了,如果找不到也就不可能存在其他的地方了,這樣我們就不用查詢a-o部分的資料了。 一般預設聚簇索引都是主鍵,設定了主鍵,系統預設就為你加上了聚簇索引,如果要自定義聚簇索引,需要在建立表時先指定好。

【非聚簇索引】 同理,非聚簇索引就像是字典的部首查詢,我們先從部首索引裡面找到這個字,再到指定的頁碼就能找到該字的具體資訊了,但是,這個部首的所有值,並不在字典的某一個範圍,而是整個字典的範圍內。即非聚簇索引是按照一定的順序來排列資料的,這與資料的物理儲存方式不一樣,需要通過一定的方式來記錄順序的,所以在頻繁更新資料的情況下,需要更多的額外開銷。