我刚刚在SQL Server 2005中的表中添加了一个索引,它让我思考。创建1个索引和定义多个列之间的区别在于每个列要索引1个索引。是否有某些原因应该用于另一个?例如Create NonClustered Index IX_IndexName On TableName(Column1 Asc, Column2 Asc, Column3 Asc)与Create NonClustered Index IX_IndexName1 On TableName(Column1 Asc)Create NonClustered Index IX_IndexName2 On TableName(Column2 Asc)Create NonClustered Index IX_IndexName3 On TableName(Column3 Asc)
3 回答
大话西游666
TA贡献1817条经验 获得超14个赞
多列索引可用于引用所有列的查询:
SELECT *
FROM TableName
WHERE Column1=1 AND Column2=2 AND Column3=3
可以使用多列索引直接查找。另一方面,最多可以使用一个单列索引(它必须查找具有Column1 = 1的所有记录,然后检查每个列中的Column2和Column3)。
- 3 回答
- 0 关注
- 762 浏览
添加回答
举报
0/150
提交
取消