SQL Server 2005 包含“覆盖索引”功能,它允许我们选择多个非键列包含到现有的非聚集索引中。
例如,我有以下列:
EmployeeID, DepartmentID, DesignationID, BranchID
这里有两种情况:
EmployeeID
是具有聚集索引的主键,其余列(DepartmentID
,DesignationID
,BranchID
)被视为非聚集索引(复合索引)。EmployeeID
是具有聚集索引的主键,并且DepartmentID
是具有 的非聚集索引DesignationID
,是非聚集索引BranchID
的“包含列”。
以上两者有什么区别?如果两者相同,引入“覆盖指数”概念有什么新意?