1. 程式人生 > >關於Oracle降序索引的定意及回溯

關於Oracle降序索引的定意及回溯

降序索引本質上是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