[MySQL 옵티마이저 구조]
RBO는 다음 15가지 규칙(우선순위)로 동작합니다.(Oracle 기준입니다.)
순위 액세스기법
1 Single row by row id
2 Single row by cluster join
3 Single row by hash cluster key with unique or primary key
4 Single row by unique or primary key
5 Cluster join
6 Hash cluster key
7 Indexed cluster key
8 Composite index
9 Single column index
10 Bounded range search on indexed columns
11 Unbounded range search on indexed columns
12 Sort merge join
13 MAX or MIN of indexed column
14 ORDER BY on indexed column
15 Full table scan
자세한 설명은 여길 참고해주세요.
{EXPLAIN | DESCRIBE | DESC}
[explain_type]
{explainable_stmt | FOR CONNECTION connection_id}
explain_type: {
FORMAT = format_name
}
format_name: {
TRADITIONAL
| JSON
| TREE
}
explainable_stmt: {
SELECT statement
| TABLE statement
| DELETE statement
| INSERT statement
| REPLACE statement
| UPDATE statement
}
SELECT
의 번호입니다.SELECT
의 타입을 나타냅니다.UNION
이나 서브쿼리를 사용하는 경우엔 다른 값을 갖습니다.이외에도 아래의 그림 처럼 테이블의 컬럼에 대한 정보를 얻을 수 있습니다.
EXPLAING의 더 다양한 사용법을 알고 싶다면 MySQL 공식문서를 참고해보세요.