一、索引的创建方式:

   1、SSMS管理器创建索引

   2、使用T-SQL语句创建索引

   语法:

   IF EXISTS(SELECT * FROM sysindexes WHERE name='索引名')

   GO

   

   DROP INDEX 表名.索引名

   CREATE [UNIQUE] [CLUSTERED|NONCLUSTERED]

   INDEX 索引名

   ON 表名(列名)

   [WITH FILLFACTOR=x]


UNIQUE:唯一索引。

CLUSTERED|NONCLUSTERED:聚集索引或非聚集索引。

FILLFACTOR:充因子(系数):指定一个0~100之间的

           表示索引页填充的百分比


--举例,为用户表UserInfo中的UserAddress地址列表创建(非聚集)索引

IF EXISTS(SELECT * FROM sysindexes WHERE name='IX_UserInfo_UserAddress')

DROP INDEX UserInfo.IX_UserInfo_UserAddress --表名.索引名

GO


CREATE NONCLUSTERED INDEX IX_UserInfo_UserAddress

ON UserInfo(UserAddress)  --ON 表名(列名)

WITH FILLFACTOR=30

GO


--如何使用索引

--用户地址是河北的有哪些

SELECT * FROM UserInfo

   WITH(INDEX=IX_UserInfo_UserAddress)

WHERE UserAddress LIKE '%河北%'