프린트 하기

OS환경 : Oracle Linux 6.8 (64bit)


DB 환경 : Oracle Database 11.2.0.4


쿼리 : 함수기반 인덱스(FBI, Function-Based Index) 오름차순 내림차순 확인

dba_ind_columns에서 descend 컬럼으로 확인가능함


테스트

인덱스 생성

1
SQL> create index idx_emp_salyear3 on emp(sal*10, sal*12 desc);

sal*10은 오름차순, sal*12는 내림차순으로 함수 기반 인덱스 생성


dba_ind_columns 뷰를 이용해 인덱스 정보 조회

1
2
3
4
5
6
7
8
9
10
11
12
13
SQL>
col index_name for a20
col column_name for a20
select index_name,column_name, descend, column_position
from dba_ind_columns
where index_name='IDX_EMP_SALYEAR3';
 
INDEX_NAME         COLUMN_NAME      DESC COLUMN_POSITION
-------------------- -------------------- ---- ---------------
IDX_EMP_SALYEAR3     SYS_NC00011$      ASC             1
IDX_EMP_SALYEAR3     SYS_NC00010$      DESC             2
 
2 rows selected.


dba_ind_expressions 뷰를 이용해 인덱스 정보 조회

1
2
3
4
5
6
7
8
9
10
11
SQL>
col table_name for a20
col column_expression for a10
select index_name, table_name, column_expression, column_position
from dba_ind_expressions
where index_name = 'IDX_EMP_SALYEAR3';
 
INDEX_NAME         TABLE_NAME       COLUMN_EXP COLUMN_POSITION
-------------------- -------------------- ---------- ---------------
IDX_EMP_SALYEAR3     EMP          "SAL"*10           1
IDX_EMP_SALYEAR3     EMP          "SAL"*12           2



참조 :