728x90
728x90
인덱스 (Index, 색인)
- DB에서 데이터 검색 속도를 향상시키기 위해 사용하는 구조
- PRIMARY KEY, UNIQUE 선언 시 자동으로 인덱스가 생성됨
# 장점
- 특정 컬럼에 대해 정렬된 값을 가짐
→ 해당 컬럼의 값을 이용하여 검색을 수행할 때, 빠르게 검색 가능
- 대량의 데이터를 처리할 때 효율적임
(인덱스가 없다면 풀 스캔 : 하나하나 스캔하며 검색해서 시간이 오래 걸림)
# 단점
- DB 내에 별도로 저장되어 있음
→ 추가적인 디스크 공간을 필요로 함
- 인덱스를 생성할 때 데이터를 정렬하는 작업을 필요로 함
→ 인덱스 생성/수정 시 시간이 소요될 수 있음
⇒ 필요한 경우에만 적절하게 설계해서 사용할 것
테이블 생성 시점에 인덱스 추가
CREATE TABLE 테이블명 (
컬럼명1 자료형 [제약조건],
...,
INDEX 인덱스명 (컬럼명) -- 해당 컬럼에 인덱스 추가
);
기존 테이블에 인덱스 추가
ALTER TABLE 테이블명
ADD INDEX 인덱스명 (컬럼명); -- 해당 컬럼에 인덱스 추가
인덱스 삭제
DROP INDEX 인덱스명;
320x100
반응형
'SQL' 카테고리의 다른 글
[SQL] 관계 차수 (0) | 2023.03.07 |
---|---|
[SQL] 기본키(PK)와 외래키(FK) (1) | 2023.03.07 |
[SQL] WHERE 조건절 & 연산자 (0) | 2023.03.07 |
[SQL] DML - 데이터 삽입/변경/삭제 (INSERT, UPDATE, DELETE) (0) | 2023.03.06 |
[SQL] DDL - 테이블 변경/삭제 (ALTER, RENAME, DROP, TRUNCATE) (0) | 2023.03.06 |