SQL聚集與非聚集索引

2021-09-30 06:42:37 字數 875 閱讀 8729

索引是在資料庫表或者檢視上建立的物件,目的是為了加快對錶或檢視的查詢的速度

按照儲存方式分為:聚集與非聚集索引

按照維護與管理索引角度分為:唯一索引、復合索引和系統自動建立的索引

索引的結構是由:根節點--->非葉節點--->非葉節點--->葉節點

1、聚集索引:表中儲存的資料按照索引的順序儲存,檢索效率比普通索引高,但對資料新增/修改/刪除的影響比較大。

建立聚集索引的語法:

create nonclustered index idximpid on emp(empid)

2、非聚集索引:不影響表中的資料儲存順序,檢索效率比聚集索引低,對資料新增/修改/刪除的影響很少

create clustered index idxempid on emp(empid)

3、惟一索引:惟一索引可以確保索引列不包含重複的值.可以用多個列,但是索引可以確保索引列中每個值組合都是唯一的

create unique index idxempid on emp(姓,名)

4、復合索引:如果在兩上以上的列上建立乙個索引,則稱為復合索引。

那麼,不可能有兩行的姓和名是重複的

語法:create index indxfullname on addressbook(firstname,lastname)

5、系統自建的索引:在使用t_sql語句建立表的時候使用primary key或unique約束時,會在表上自動建立乙個惟一索引

自動建立的索引是無法刪除的

create table abc

( empid int primary key,

firstname varchar(50)unique,

lastname   varchar(50)unique,

)

聚集索引與非聚集索引 SQL

介紹 查詢資料表中的行的兩種方式,不管聚集索引,還是非聚集索引,都是用b 樹來實現的,關於b樹的介紹 clustered index 聚集索引 類似於使用字典的拼音索引來找字 表必須按順序排列,聚集索引的葉節點就是實際的資料頁,每一頁為乙個頁節點,訪問資料時表得保持順序故會減低速度,每個表只能有乙個...

聚集與非聚集索引

聚集與非聚集索引 索引是在資料庫表或者檢視上建立的物件,目的是為了加快對錶或檢視的查詢的速度 按照儲存方式分為 聚集與非聚集索引 按照維護與管理索引角度分為 唯一索引 復合索引和系統自動建立的索引 索引的結構是由 根節點 非葉節點 非葉節點 葉節點 1 聚集索引 表中儲存的資料按照索引的順序儲存,檢...

聚集索引與非聚集索引

非聚集索引也是堆結構?其實sqlserver有幾種頁面型別 資料都使用一頁一頁來儲存,就像windows的記憶體也是使用頁面來組織的 感興趣的朋友可以了解下,希望本文可以增加你們對非聚集索引結構的理解。我們知道sqlserver的資料行的儲存有兩種資料結構 a 堆b b樹 binary 二叉樹 資料...