你可以在列组上创建多个索引,提供到每个索引有一个唯一升序和降序列的组合。例如,要在
stock 表的
stock_num 和
manu_code 列上创建所有可能的索引,您能创建四个索引:
- 两个列上升序的 ix1 索引
- 两个列上降序的 ix2 索引
- ix3 索引在 stock_num 上升序以及在 manu_code 上降序
- ix4 索引在 stock_num 上降序以及在 manu_code 上升序
由于数据库服务器的双向遍历能力,你不需要创建这四个索引。您仅需创建两个索引:
- ix1 和 ix2 索引对于用户为两个列指定的相同的排序方向(升序或降序)的排序达到相同的结果,因此您仅需这对索引之一。
- ix3 和 ix4
索引对于用户为两个列(第一列上的升序和第二列上的降序或反之)指定的不同的排序方向的排序达到相同的结果。因此,您仅需创建这对索引之一。(另见 索引的双向遍历。)
如果每个索引都有不同的排列顺序,则
GBase 8s
还可以支持对同一升序和降序列组合的多个索引;请参阅 SET COLLATION 语句 。