標籤:
先建立一個樣本表temp
對錶中Name欄位建立一個索引
if exists(select name from sysindexes where name = ‘suoyin‘)drop index temp.suoyin ---如果存在這個名字的索引,則刪除這個索引create nonclustered index suoyin_name on temp(Name) --建立索引時正確的,查詢的時候出了問題--(2)查詢索引select * from temp with(index=suoyin_name) where Name = ‘A‘--查看temp表的索引資訊sp_helpindex temp
文法
CREATE [UNIQUE] [CLUSTERED| NONCLUSTERED ]
INDEX index_name ON { table | view } ( column [ ASC | DESC ] [ ,...n ] )
[with[PAD_INDEX][[,]FILLFACTOR=fillfactor]
[[,]IGNORE_DUP_KEY]
[[,]DROP_EXISTING]
[[,]STATISTICS_NORECOMPUTE]
[[,]SORT_IN_TEMPDB]
]
[ ON filegroup ]
CREATE INDEX命令建立索引各參數說明如下:UNIQUE:用於指定為表或視圖建立唯一索引,即不允許存在索引值相同的兩行。CLUSTERED:用於指定建立的索引為叢集索引。NONCLUSTERED:用於指定建立的索引為非叢集索引。index_name:用於指定所建立的索引的名稱。table:用於指定建立索引的表的名稱。view:用於指定建立索引的視圖的名稱。ASC|DESC:用於指定具體某個索引列的升序或降序排序方向。Column:用於指定被索引的列。PAD_INDEX:用於指定索引中間級中每個頁(節點)上保持開放的空間。FILLFACTOR = fillfactor:用於指定在建立索引時,每個索引頁的資料占索引頁大小的百分比,fillfactor的值為1到100。IGNORE_DUP_KEY:用於控制當往包含於一個唯一叢集索引中的列中插入重複資料時SQL Server所作的反應。DROP_EXISTING:用於指定應刪除並重新建立已命名的先前存在的叢集索引或者非叢集索引。STATISTICS_NORECOMPUTE:用於指定到期的索引統計不會自動重新計算。SORT_IN_TEMPDB:用於指定建立索引時的中間排序結果將儲存在 tempdb 資料庫中。ON filegroup:用於指定存放索引的檔案組。
Sql Server索引