explain
-
Real MySQL [6-8] 실행계획 - GROUP BYMySQL 2016. 12. 13. 23:29
본 게시물의 내용과 이미지는 도서 Real MySQL의 내용을 재구성하여 작성되었습니다. 저자, 출판사에 의해 저작권 문제 발생시 게시물이 비공개 될 수 있음을 알립니다. GROUP BY 처리 GROUP BY 또한 ORDER BY와 같이 쿼리가 스트리밍된 처리를 할 수 없게 하는 요소 중 하나다. GROUP BY 절이 있는 쿼리에서는 HAVING 절을 사용할 수 있는데 HAVING 절은 GROUP BY 결과에 대해 필터링 역할을 수행한다. 일반적으로 GROUP BY 처리 결과는 임시 테이블이나 버퍼에 존재하는 값을 필터링하는 역할을 수행한다. GROUP BY 에 사용된 조건은 인덱스를 사용해서 처리될 수 없으므로 HAVING 절을 튜닝하려고 인덱스를 생성하거나 다른 방법을 고민할 필요가 없다. GROUP..
-
Real MySQL [6-2] 실행계획 - table, type 칼럼MySQL 2016. 12. 8. 21:37
본 게시물의 내용과 이미지는 도서 Real MySQL의 내용을 재구성하여 작성되었습니다. 저자, 출판사에 의해 저작권 문제 발생시 게시물이 비공개 될 수 있음을 알립니다. 이전 포스팅 ( Real MySQL [1] 실행계획 - id, select_type 칼럼) 에서 계속... table 칼럼 MySQL의 실행 계획은 단위 SELECT 쿼리 기준이 아니라 테이블 기준으로 표시된다. 아래와 같이 별도의 테이블을 사용하지 않는 SELECT 쿼리의 경우에는 table 이 null로 표시된다. EXPLAIN SELECT NOW(); EXPLAIN SELECT NOW() FROM DUAL; 일부 DBMS에서는 SELECT문장이 반드시 FROM 절을 가져야 하는 제약이 있어 이를 위해 'DUAL'이라는 스칼라(칼럼..