EXPLAIN

MySQL EXPLAIN 명령어에 대해 알아봅시다.

EXPLAIN문은 MySQL 이 명령문을 실행하는 방법에 대한 정보를 제공합니다. 즉, 쿼리 실행 계획에 대한 정보를 제공합니다. 아래는integration이라는 테이블을 조회하는 쿼리에 대한 EXPLAIN 문과 그 결과입니다.

EXPLAIN  
SELECT *  
FROM 테이블 a;

각 컬럼에 대해 자세히 알아보겠습니다.

id

SELECT 식별자로 쿼리 내 SELECT 명령어의 일련번호와 같습니다.

select_type

Select_typeMeaning

SIMPLE

UNION 또는 서브 쿼리를 사용하지 않은 단순 SELECT 인 경우

PRIMARY

가장 상위의 SELECT

UNION

UNION 구문에서 두 번째 이후로 나오는 SELECT

DEPENDENT UNION

UNION 구문에서 두 번째 이후로 나오는 SELECT 이면서 외부 쿼리의 결과나 조건에 따라 영향을 받아 결정되는 경우

UNION RESULT

UNION 구문의 결과

  • DEPENDENT UNION 예시

SELECT column1, column2
FROM table1
UNION
-- 두 번째 SELECT 문은 첫 번째 SELECT 문의 결과에 의존합니다.
SELECT column3, column4
FROM table2
WHERE column5 = (
    SELECT column6 FROM table1 WHERE condition
    );

Ref : https://dev.mysql.com/doc/refman/8.0/en/explain-output.html#explain-output-columns

Last updated