Day13_MYSQL_ INDEX
2023. 3. 21. 16:50ㆍSQL
1) 인덱스의 역할 및 기능
- 테이블의 동작속도(조회)를 높여주는 자료구조
- 데이터의 위치를 빠르게 찾아주는 역할
- MYI(MYSQL Index)라는 파일에 저장
- MySQL에서는 primary key, unique 등록시 해당 컬럼이 index 적용
- 인덱스는 하나 또는 여러개의 컬럼에 적용 가능
- 가급적 업데이트가 안되는 필드에 설정하는 것이 좋음
2) order by, group by와 index 관계
효과가 일어나지 않는 예)
- order by 인덱스 컬럼, 일반 컬럼: 복수에 키에 대해 order by를 사용한 경우
- where 일반컬럼1 = '값' order by 인덱스 컬럼: 연속하지 않는 컬럼(띄어쓰기가 잇는 경우)에 대해 order by를 실행한 경우
- order by 인덱스컬럼1 desc, 인덱스컬럼2 asc : desc와 asc를 혼합하여 사용한 경우
- group by 일반컬럼1 order by 인덱스컬럼: group by와 order by의 컬럼이 다른 경우
- order by 함수(인덱스컬럼): order by 절에 컬럼이 아닌 다른 표현을 사용한 경우
3) 인덱스 문법
단일 인덱스
create index 인덱스명 on 테이블명(필드명);
다중 인덱스
create index 인덱스명 on 테이블명(필드명1,필드명2...);
인덱스 조회
show index from 테이블명;
인덱스 삭제 (좀 특이!)
alter table 테이블명 drop index 인덱스명;
728x90
'SQL' 카테고리의 다른 글
NoSQL MongoDB-Compass에 data import 시키기 (0) | 2023.05.16 |
---|---|
NoSQL 기초 (0) | 2023.05.09 |
Day13_MYSQL_ 사용자 추가하기, 권한 부여, 삭제 (0) | 2023.03.21 |
Day13_MYSQL_ truncate 구문 (0) | 2023.03.21 |
Day13_MYSQL_ 트렌섹션(transaction) (0) | 2023.03.21 |