본문 바로가기
개발

[오라클:Oracle] INDEX의 사용법과 좋은 인덱스(INDEX)

by garlicssam 2022. 1. 13.

INDEX란?

일종의 색인 기술로 DB의 테이블상에 있는 데이터를 빨리 검색하게 하는 용도의 객체이다. INDEX는 테이블에 있는 컬럼을 이용하여 만들게 되며 INDEX TABLE을 생성하여 관리한다. 

 

INDEX의 생성

CREATE INDEX [index_name] ON [table_name](column1, column2, ...)

 

INDEX의 조회

SELECT * FROM USER_INDEXES WHERE TABLE_NAME = [table_name]

 

INDEX의 삭제

DROP INDEX [index_name]

 

좋은 INDEX에 대해

  1. INDEX는 하나의 컬럼 혹은 여러 개의 컬럼을 사용하여 생성할 수 있지만 무조건 많은 컬럼을 사용한다고 검색 속도 향상을 가져오지는 않는다. 검색 시 자주 사용하는 컬럼이나 유니크(unique)한 값을 가진 컬럼을 위주로 인덱스를 설정하는 것이 좋다
  2. 컬럼이 가지고 있는 값이 중복 정도가 낮을수록 좋다. 
  3. Cardinality(카디널리티:특정 데이터 집합의 유니크(unique)한 값의 수)가 높을수록 좋다.
  4. Selectivity(선택도:데이터 집합에서 특정 값을 잘 골라내는 정도)가 높을수록 좋다.

 

댓글