关于Oracle降序索引的定意及回溯

2018-09-10 11:42:01 浏览数 (5)

降序索引本质上是FBI,其具体定义可以通过 user_ind_expressions 或dba_ind_expressions 查询。 那么同样的,降序索引只有在CBO下才能被使用。 Connected to Oracle9i Enterprise Edition Release 9.2.0.4.0 Connected as eygle

SQL> create table t as select * from dba_users;

Table created

SQL> create index idx_username_desc on t(username desc);

Index created

SQL> select index_name,table_name,INDEX_TYPE from user_indexes where table_name='T';

INDEX_NAME                     TABLE_NAME                     INDEX_TYPE ------------------------------ ------------------------------ --------------------------- IDX_USERNAME_DESC              T                              FUNCTION-BASED NORMAL

SQL> select column_name,column_position,descend from user_ind_columns   2  where table_name='T';

COLUMN_NAME                    COLUMN_POSITION DESCEND ------------------------------ --------------- ------- SYS_NC00013$                                 1 DESC

SQL>

SQL> select * from user_ind_expressions where table_name='T';

INDEX_NAME                     TABLE_NAME                     COLUMN_EXPRESSION              COLUMN_POSITION ------------------------------ ------------------------------ ------------------------------ --------------- IDX_USERNAME_DESC              T                              "USERNAME"                                   1

0 人点赞