聚集索引和非聚集索引最簡單的解釋

2022-04-29 02:24:05 字數 610 閱讀 7419

讓我們用現實生活中的例子來理解這2類索引。

假設你的鄰居到你家,問你「woody tu」的**號碼。在這種情況下,**本目錄就是個聚集索引。你開啟**本目錄,跳過3/4的頁,假定他的名字應該出現在目錄的最後一部分。在前後翻過幾頁後,你找到了列有「woody tu」名字的頁。現在你就可以把號碼告訴你的鄰居了。看看這裡發生了什麼?當你找到了列有「woody tu」名字的頁時,你就有了你鄰居(客戶端)需要的資訊。

我們再看另乙個情況,你的鄰居到你家,問你「woody tu」的電子郵件位址,而你並不記得。在這個情況下,**本目錄會扮演非聚集索引的角色。你開啟**本目錄,跳過3/4的頁,假定他的名字應該出現在目錄的最後一部分。在前後翻過幾頁後,你找到了列有「woody tu」名字的頁。現在你可以打**給「woody tu」,問下他的電子郵件位址是多少。掛下**後,你可以把他的電子郵件位址交給你的鄰居。看看這裡發生了什麼?當你找到了列有「woody tu」名字的頁時,你並沒有鄰居(客戶端)需要的資訊。你需要去做乙個額外操作(打**)來獲得鄰居(客戶端)需要的資訊。在sql server裡,這個額外操作被稱為書籤/rid查詢(bookmark or rid lookup,注:rid,堆的行識別符號(fileid:pageid:slotnumber))。

原文出處

聚集索引和非聚集索引

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

聚集索引和非聚集索引

本文引自 一種索引,該索引中鍵值的邏輯順序決定了表中相應行的物理順序。聚集索引確定表中資料的物理順序。聚集索引類似於 簿,後者按姓氏排列資料。由於聚集索引規定資料在表中的物理儲存順序,因此乙個表只能包含乙個聚集索引。但該索引可以包含多個列 組合索引 就像 簿按姓氏和名字進行組織一樣。聚集索引對於那些...

聚集索引和非聚集索引

聚集索引和非聚集索引 1 聚集索引 聚集索引,表中的資料儲存位置,根據索引的排序進行實際儲存,因此效率是相當高的。因為聚集索引決定了表中資料行的儲存位置。乙個表不可能有兩個或以上的聚集索引,如果乙個表中已經有乙個聚集索引,那麼這個表中其他的索引都將是非聚集索引。表排列順序 表記錄的排列順序與索引的排...