索引可以包含一个、两个或多个列。两个或更多个列上的索引被称作复合索引。例如,以下语句会创建一个具有两列的复合索引:
CREATE INDEX name ON Employees ( Surname, GivenName ); |
如果第一列不能单独提供较高的选择性,复合索引将会非常有用。例如,如果许多雇员都同姓,则 Surname 和 GivenName 上的复合索引非常有用。因为每个雇员都有唯一的 ID,所以 EmployeeID 和 Surname 上的复合索引可能没有用处,因此列 Surname 不会提供任何附加选择性。
利用索引中的附加列,您可以缩小搜索的范围,但使用一个具有两列的索引不同于使用两个单独的索引。复合索引的结构与电话簿类似,它首先按姓对雇员进行排序,然后按名对所有同姓的雇员进行排序。如果您知道姓,电话簿将非常有用,如果您知道名和姓,电话簿则更为有用,但如果您只知道名而不知道姓,电话簿将没有用处。
![]() |
使用DocCommentXchange讨论此页。
|
版权 © 2013, SAP 股份公司或其关联公司. - SAP Sybase SQL Anywhere 16.0 |