发布网友 发布时间:2022-04-28 15:49
共4个回答
懂视网 时间:2022-05-05 03:32
欢迎进入Oracle社区论坛,与200万技术人员互动交流 >>进入 降序索引本质上是FBI,其具体定义可以通过 user_ind_expressions 或dba_ind_expressions 查询。 那么同样的,降序索引只有在CBO下才能被使用。 Connected to Oracle9i Enterprise Edition Release 9
欢迎进入Oracle社区论坛,与200万技术人员互动交流 >>进入
降序索引本质上是FBI,其具体定义可以通过 user_ind_expressions 或dba_ind_expressions 查询。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
热心网友 时间:2022-05-05 00:40
索引只是提供快速查询数据的一种数据结构,本身无所谓升序和降序,索引本质其实是索引值和索引值数据块rowid的一对值,就像我们图书中的目录一样,本身就不是连续的,可以通过页码快速查找。如果索引分布不均匀,可以进行反转索引使索引值均匀。热心网友 时间:2022-05-05 01:58
你是指查询的时候吗?如果是的话,只需要select * from tablename order by col_name desc热心网友 时间:2022-05-05 03:32
默认是升序.要么创建一个函数索引,通过方法将值的大小颠倒过来.