create database myindexdemo
gouse myindexdemo
gocreate table abc
(a int not null,
b char(10),
c varchar(10))go
insert into abc
select 1,'b','c'
union
select 5,'b','c'
union
select 7,'b','c'
union
select 9,'b','c'
goselect * from abc
--在abc表上建立聚集索引
create clustered index clu_abc
on abc(a)
go--檢視索引
sp_helpindex abc
--插入資料
insert into abc
values(2,'b','c')
--因為有聚集索引所以整個表的物理結構發生了變化
--此時按照該索引查詢的內容為:
select * from abc with(index = clu_abc) where a>1 and a<5
--刪除索引後
drop index abc.clu_abc
--查詢內容物理順序還是按照順序的
select * from abc
--在abc表上建立非聚集索引
create nonclustered index nonclu_abc
on abc(a)
--檢視索引
sp_helpindex abc
--插入資料
insert into abc
values(4,'b','c')
--因為有聚集索引所以整個表的物理結構發生了變化
--此時查詢的內容為:
select * from abc with(index = nonclu_abc)
--刪除索引後
drop index abc.nonclu_abc
--查詢內容物理順序是按照插入的順序
select * from abc
聚集索引和非聚集索引
聚集索引和非聚集索引 一 聚集索引和非聚集索引 聚集索引和非聚集索引的根本區別是表記錄的排列順序和與索引的排列順序是否一致,聚集索引表記錄的排列順序與索引的排列順序一致,優點是查詢速度快,因為一旦具有第乙個索引值的紀錄被找到,具有連續索引值的記錄也一定物理的緊跟其後。聚集索引的缺點是對錶進行修改速度...
聚集索引和非聚集索引
本文引自 一種索引,該索引中鍵值的邏輯順序決定了表中相應行的物理順序。聚集索引確定表中資料的物理順序。聚集索引類似於 簿,後者按姓氏排列資料。由於聚集索引規定資料在表中的物理儲存順序,因此乙個表只能包含乙個聚集索引。但該索引可以包含多個列 組合索引 就像 簿按姓氏和名字進行組織一樣。聚集索引對於那些...
聚集索引和非聚集索引
聚集索引和非聚集索引 1 聚集索引 聚集索引,表中的資料儲存位置,根據索引的排序進行實際儲存,因此效率是相當高的。因為聚集索引決定了表中資料行的儲存位置。乙個表不可能有兩個或以上的聚集索引,如果乙個表中已經有乙個聚集索引,那麼這個表中其他的索引都將是非聚集索引。表排列順序 表記錄的排列順序與索引的排...