數據庫:twt001
數據表:aclu
use twt001
go
create table aclu
(
A int not null,
B char(10),
C varchar(10)
)
go
insert into aclu
select 1,'B','C'
union
select 5,'B','C'
union
select 7,'B','C'
union
select 9,'B','C'
go
在aclu表上創建聚集索引
create clustered index CLU_ABC
on aclu(A)
GO
查看索引
sp_helpIndex aclu
運行如下:
再次插入數據
insert into aclu
values(2,'B','C')
因爲有聚集索引所以整個表的物理結構發生了變化,此時按照該索引查詢的內容爲:
select * from aclu WITH(index = CLU_ABC) WHERE A>1 AND A<5
這一條記錄插入到了第一條記錄的後面,而不是整個表的最後:
刪除索引:
Drop index aclu.CLU_ABC
查詢內容物理順序還是按照順序的,跟上圖一樣。
在aclu表上創建非聚集索引
create nonclustered index NONCLU_ABC
on aclu(A)
查看索引
插入數據
insert into aclu
values(4,'B','C')
此時表內容如下:
因爲沒有聚集索引,所以整個表的物理結構沒有發生變化
以下查詢的內容爲:
select * from aclu WITH(index = NONCLU_ABC)
刪除索引後
Drop index aclu.NONCLU_ABC
查詢內容物理順序是按照插入的順序