인덱스의 장점
인덱스의 단점
사용자가 직접 생성하는 인덱스
CREATE [UNIQUE] INDEX 인덱스_이름
ON 테이블_이름 (열_이름) [ASC | DESC];
인덱스 확인
SHOW INDEX 테이블_이름;
인덱스의 적용
ANALYZE TABLE 테이블_이름;
인덱스 제거
DROP INDEX 인덱스이름 ON 테이블이름;
데이터 베이스 생성과 테이블 생성 다시보기
-- 자동 생성 인덱스
create database index_test_db; -- 데이터베이스생성
use index_test_db; --작업할 데이터베이스로 이동(사용한다고 선언)
# 지정한 데이터 베이스에 테이블 생성
create table table1(
col1 int primary key,
col2 int unique,
col3 int
);
show index from table1; -- 인덱스를 확인
-- 클러스터형 인덱스의 데이터 정렬 확인
drop table if exists member;
create table member
( mem_id char(8),
mem_name varchar(10),
mem_number int,
addr char(2)
);
show index from member;
insert into member values('TWC', '트와이스', 9, '서울');
insert into member values('BLK', '블랙핑크', 4, '경남');
insert into member values('WMN', '여자친구', 6, '경기');
insert into member values('OMY', '오마이걸', 7, '서울');
-- 데이터 순서 확인
select * from member;
alter table member
add constraint
primary key (mem_id);
desc member;
-- 인덱스 직접 생성 및 동작 확인
use market_db;
select * from member;
show index from member;
-- 인덱스 직접 생성
create index idx_member_addr on member (addr);
create unique index idx_member_mem_name on member (mem_name);
analyze table member;
-- excution plan 확인
select * from member;
select mem_id, mem_name, addr from member;
select mem_id, mem_name, addr from member where mem_name = '에이핑크';
-- 인덱스 삭제
show index from member;
drop index idx_member_mem_name on member;
drop index idx_member_addr on member;