說一下SQLServer中索引的兩種類型?


  1. 聚簇(或者叫做聚集,cluster)索引和非聚簇索引。
  2. 字典的拼音目錄就是聚簇(cluster)索引,筆畫目錄就是非聚簇索引。這樣查詢“G到M的漢字”就非常快,而查詢“6划到8划的字”則慢。聚簇索引是一種特殊索引,它使數據按照索引的排序順序存放表中。聚簇索引類似於字典,即所有詞條在字典中都以字母順序排列。聚簇索引實際上重組了表中的數據,所以你只能在表中建立一個聚簇索引。當數據按值的范圍查詢時,聚簇索引就顯得特別有用。因為所有SQLServer都必需先找到所查詢范圍的第一行,然后依次下去,直到該范圍的最后一個值找到為止,並且保證了所有其他值也落在這個范圍內。舉一個例子,一個應用程序要查找首字母位於G和P之間的姓名列表,SQLServer首先找到以字母G開頭的名字,取出所有記錄,直到找到以字母P開頭的名字為止,這種方法使得查詢過程非常高效。
  3. 進行大量數據改動的表不適宜用聚簇索引,因為SQLServer將不得不在表中維護行的次序。如果要索引的值極少,例如一個列包含的全都是1和0,創建聚簇索引就不是個好主意。如果表經常由一個指定的列來排序,該列將是簇索引的最佳候選列。這是因為表中的數據已經為你排好序了。如果訪問一個表並使用BETWEEN、<、>、>=或<=操作符來返回一個范圍的值時,應該考慮使用聚簇索引。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM