database.sarang.net
UserID
Passwd
Database
DBMS
MySQL
PostgreSQL
Firebird
ㆍOracle
Informix
Sybase
MS-SQL
DB2
Cache
CUBRID
LDAP
ALTIBASE
Tibero
DB 문서들
스터디
Community
공지사항
자유게시판
구인|구직
DSN 갤러리
도움주신분들
Admin
운영게시판
최근게시물
Oracle Tutorials 11339 게시물 읽기
 News | Q&A | Columns | Tutorials | Devel | Files | Links
No. 11339
오라클 기본강좌(5)-인덱스
작성자
정재익(advance)
작성일
2002-07-12 21:34
조회수
10,823

6. 인덱스

관계형 DBMS가 제공하는 물리적 저장구조 중의 하나로써 데이타 값을 사용하여 테이블을 신속하게 접근할 수 있는 수단을 말합니다.

(1) 인덱스의 구조

인덱스는 테이블과는 독립적인 구조로써 각 인덱스는 column 값과 값을 갖는 행에 대한 포인터(ROWID)로 구성됩니다. 포인터는 테이블의 행을 직접 지정하여 테이블 전체를 검색하지 않게 합니다.

 

(2) B*Tree

·이 트리는 어떤 행에 대한 액세스 횟수도 동일하게 안 이진의 균형 탐색 구조

·행이 테이블의 시작이나 중간, 또는 끝에 있어도 거의 같은 횟수 내에 지정된 값을 액세 스하는 효율적인 방법.

 

(3) 인덱스 유형

·Unique 인덱스 : 지정된 column의 값이 고유함을 보장

·Non-unique 인덱스 : 데이터를 query할 때 가장 빠른 결과를 보장

·단일 Column인덱스 : 오직 한 개의 column만이 인덱스에 있음

·연결 인덱스 또는 조합 인덱스 : 성능이나 고유함 검사를 목적으로 인덱스에 다수개의 column을 포함할 수 있음

 

(4) 인덱스를 만드는 때

·WHERE 절이나 조인 조건에서 column을 자주 이용할 때

·Column이 넓은 범위의 값을 가질 때

·많은 NULL값을 갖는 column일 때

·테이블이 크고 대부분의 query가 행의 10-15% 이하를 검색한다고 예상될 때

 

(5) 인덱스를 만들지 않아야 할 때

·테이블이 작을 때

·Column이 query의 조건으로 사용되는 경우가 별로 없을 때

·테이블이 자주 변경될 때

가. 인덱스 생성

CREATE [unique] INDEX 인덱스

ON 테이블 (Column[, Column]....)

[cluster];

 

 

※ 인덱스는 인덱스의 이름이고, Column은 인덱스되는 테이블의 column명입니다.

 

member 테이블의 name column에 query 액세스 속도를 빠르게 하기 위한 인덱스를 만듭니다.

SQL> create index member_name_idx

2 on member(name);

색인이 생성되었습니다.

 

 

나. 인덱스 삭제

DROP INDEX 명령을 써서 인덱스를 삭제하십시오. 인덱스를 삭제하려면 그 인덱스의 소유자이거나 DROP ANY INDEX 권한을 가지고 있어야 합니다.

DROP INDEX 인덱스의 이름;

 

SQL> drop index member_name_idx;

뷰가 삭제되었습니다.

[Top]
No.
제목
작성자
작성일
조회
11342파워 OCP 강좌
정재익
2002-07-12
19078
11341오라클 기본강좌(7)-synonym
정재익
2002-07-12
12941
11340오라클의 기본강좌(6)-사용자 및 권한관리
정재익
2002-07-12
14217
11339오라클 기본강좌(5)-인덱스
정재익
2002-07-12
10823
11338오라클 기본강좌(4)-VIEW 의 생성, 삭제
정재익
2002-07-12
10030
11337오라클 기본강좌(3)-시퀀스 생성, 수정, 삭제
정재익
2002-07-12
13548
11336오라클 기본강좌(3)-함수
정재익
2002-07-12
17009
Valid XHTML 1.0!
All about the DATABASE... Copyleft 1999-2023 DSN, All rights reserved.
작업시간: 0.049초, 이곳 서비스는
	PostgreSQL v16.1로 자료를 관리합니다