[SQL] MySQL 인덱싱

MySQL Index
WHERE절에서 조건으로 쓰이는 컬럼을 인덱스로 만드는 것이 좋고, AND 연산으로 검색되는 컬럼들은
모두 하나의 인덱스로 만드는 것이 좋다.



Index 생성
테이블 생성시


mysql> CREATE TABLE tablename (id CHAR(13) NOT NULL,
passwd CHAR(8) NOT NULL,
name CHAR(8) NOT NULL,
email CHAR(64) NOT NULL,
INDEX (id)
);

id 컬럼에 대한 인덱스를 생성한다.
두 개 이상의 컬럼에 대해서도 인덱스를 생성할 수 있다.


INDEX(id, passwd)

id 컬럼과 passwd 컬럼을 AND 조건으로 검색할 때 인덱스가 작동한다.


테이블 생성 후 추가


mysql> ALTER TABLE tablename ADD INDEX index_name(col1, col2,...);

index_name으로 인덱스 추가.


인덱스 정보 보기
mysql> SHOW INDEX FROM tablename;



인덱스 삭제
mysql> ALTER TABLE tablename DROP INDEX index_name;

댓글

이 블로그의 인기 게시물

[LINUX] CentOS 부팅시 오류 : UNEXPECTED INCONSISTENCY; RUN fsck MANUALLY

[MSSQL] 데이터베이스가 사용 중이어서 배타적으로 액서스할 수 없습니다

구글코랩) 안전Dream 실종아동 등 검색 오픈API 소스를 공유합니다. (구글드라이브연동, 이미지 수집 소스)