SQL 创建索引
示例
CREATE INDEX ix_cars_employee_id ON Cars (EmployeeId);
这将为表Cars中的EmployeeId列创建索引。此索引将提高要求服务器按EmployeeId中的值排序或选择的查询的速度,例如:
SELECT * FROM Cars WHERE EmployeeId = 1
索引可以包含多于1列,如下所示;
CREATE INDEX ix_cars_e_c_o_ids ON Cars (EmployeeId, CarId, OwnerId);
在这种情况下,如果条件集的排序方式相同,则该索引对于要求对所有包含的列进行排序或选择的查询很有用。这意味着在检索数据时,它可以使用索引找到要检索的行,而不用查看整个表。
例如,以下情况将利用第二个索引;
SELECT * FROM Cars WHERE EmployeeId = 1 Order by CarId DESC
但是,如果顺序不同,则索引具有以下不同的优点;
SELECT * FROM Cars WHERE OwnerId = 17 Order by CarId DESC
索引没有帮助,因为数据库必须跨EmployeeId和CarID的所有值检索整个索引,以查找具有的项目OwnerId=17。
(仍可以使用索引;查询优化器可能会发现检索索引并在上进行过滤OwnerId,然后仅检索所需的行比检索完整表要快,尤其是在表很大的情况下。)
热门推荐
10 新婚简短的祝福语大全
11 恭喜生孩子祝福语简短
12 病人的生日祝福语简短
13 老板祝福语简短20字
14 自己办酒祝福语简短
15 拿到驾照的祝福语简短
16 公司过年祝福语简短优美
17 送朋友内裤祝福语简短
18 八一祝福语简短文字