只有建立在表上的索引。一個表的存儲由兩部分組成的:一部分用來存放表的數據頁面,另一部分存放索引頁
面。
在表中插入或更新表中數據時,將有額外的操作來維護索
引,那如果沒有在表中建立索引的時候,如果向表中插入數據時,只需向數據表插入即可,即維護一張表就
OK
了,那現在建立了索引,當你在向表中插入記錄裏,系統還向更改索引表的內容,即多維護一張表。
1.一個表只能有一個聚集索引
,
只
能有一個,也可以不建。
2
.創建非聚集索引之前要先創建聚集索引
3
.關鍵值的唯一性使用
unique
來維護
聚集索引是和表的物理順序是一致的,所以速度要快,但非聚集索引就不是了,它是和表的物理順序是無關
的,所以速度要慢。
可以使用存儲過程
sp_helpindex
來查看錶的所有索引信息
格式:
Sp_helpindex ‘
表名稱
’
索引選擇:
在表中哪些列適宜建立索
引呢?
適宜建立索引的列包括:主鍵字段,外鍵字段,要排序的
列,要分組的列,以及
WHERE
子句中精確指定的列
(
=
)
Where name like ‘
張
%’
可搜索的。不需要整個表搜索
Where name like ‘%
張
%’
不可搜索的。需要遍歷整個表。
不適合建立索引的列:
列的類型是文本,圖像或
位
列的唯一性不強,如性別
(十萬條)
列的範圍太多,不能有效
索引
CREATE INDEX index_name
ON table_name (column_name)
Abstract from:
http://dufei.blog.51cto.com/382644/80766/