* Index
- 생성
create index 인덱스명 on 테이블명(컬럼명, 컬럼명, ... );
- 삭제
drop index 인덱스명
- 재생성
효율성이 떨어지면 인덱스를 재 생성해 주어야 한다.
컬럼의 데이터가 입력,수정,삭제될 경우 해당 컬럼에 의해 생성된 인덱스에 대해서 재구성 해야 된다.
alter index index명 rebuild;
ex)alter index idx_emp_ename rebuild;
- 조회
select index_name from user_indexes;
* 인덱스를 타지 않는 SQL
1. 인덱스 컬럼 절의 변형
2. 내부적인 데이터 변환
3. NULL 조건의 사용
4. 부정형 조건의 사용
5. LIKE 연산자 사용
6. 최적기가 판단
* hint 사용
/*+ index(테이블명 인덱스명) */ : 테이블에 지정된 인덱스 사용
/*+ no_index(테이블명 인덱스명) */ : 테이블에 지정된 인덱스는 사용하지말것
'Oracle' 카테고리의 다른 글
여러테이블에 동시에 한테이블이 데이터를 입력 (0) | 2013.11.20 |
---|---|
merge (0) | 2013.02.18 |
sequence : 시퀀스 (0) | 2013.02.14 |
alter : 테이블 변경 (0) | 2013.02.14 |
테이블 복제와 데이터 삽입 (0) | 2013.02.13 |