[MySQL] Explain 결과의 type 칼럼

1. system
 - MyISAM or MEMORY table중 레코드가 1건 이하로 존재하는 테이블의 참조 형태 접근
 * InnoDB에는 없는 형태

2. const
 - primary key or unique key 를 where 조건에 이용해서 결과가 1건만 반환되는 쿼리의 처리 방식

3. eq_ref
 - join에서 처음 읽은 테이블의 칼럼 값을 그 다음 읽어야 할 테이블의 primary key or unique key 칼럼의 검색 조건에 사용할때를 eq_ref 라고 하고
두번째 이후에 읽는 테이블의 type 칼럼에 표시된다.
 - 두번째 이후에 읽는 테이블에서 반드시 1건만 존재한다는 보장이 있어야 사용가능

4. ref
 - join 순서와 상관없고, index 종류와 관계없이 도등 조건으로 검색할 때는 ref 접근 방법이 사용된다.

5. fulltext
 - 

6. ref_or_null
 - ref 접근 방식과 같은데, NULL 비교가 추가된 형태

7. index_merge
 - 2개 이상의 index를 이용해 각각의 검색 결과를 만들어낸 후 그 결과를 병합하는 처리 방식

8. unique_subquery
 - where 조건절에 사용될 수 있는 IN (subquery) 형태의 쿼리를 위한 접근 방식

9. index_subquery
 - in (subquery) 형태에서 subquery의 결과가 중복된 값을 반환할 수 있지만, 중복을 index를 이용해 제거할 수 있는 접근 방법

10. range
 - <, >, IS NULL, BETWEEN, IN, LIKE 등의 연산자를 이용해 인덱스 검색할때
 * 일반적으로 range scan은 const, ref, range 세가지 접근 방법을 말한다.

11. index
 - index full scan

12. ALL
 -


* All, index
index는 인덱스 풀 스캔을 의미하며, ALL은 풀 테이블 스캔을 의미한다. 둘 다 대상의 차이만 있지 전체 레코드를 대상으로 하는 작업 방식이라서 빠르게 결과를 가져오기는 어렵다.
일반적인 OLTP 환경에 적합한 접근 방식은 아니므로 새로운 인덱스를 추가하거나 쿼리의 요건을 변경해서 이러한 접근 방법을 제거하는 것이 좋다.

Posted by incree

2014/08/25 13:03 2014/08/25 13:03
, ,
Response
0 Trackbacks , 0 Comments
RSS :
http://www.incree.com/tc/incree/rss/response/356

Trackback URL : 이 글에는 트랙백을 보낼 수 없습니다


Notices

Archives

Authors

  1. incree

Recent Trackbacks

Calendar

«   2018/12   »
            1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31          

Site Stats

Total hits:
508454
Today:
238
Yesterday:
319