by 김쿠쿠 [Oracle Tuning] [2018.11.15 16:46:36]
안녕하세요 궁금한게 있어서 여쭙니다.
2개의 SQL을 union all로 묶은 후 컬럼들의 max값을 반환하도록 SQL을 구성했습니다.
각각의 SQL은 대략 cost 10미만의 아주 단출하고 간단한 쿼리 입니다.
그런데 2개를 union all로 묶는 순간 cost가 2000을 넘어갑니다.
잉.?
이런 이유는 왜일까요?
UNION ALL 하기 전 각각의 실행계획과 UNION ALL 후 실행계획이 동일한지 확인하세요. 실행계획이 동일하다면? union 및 집계쿼리 단계에서 코스트가 올라간 거구요. 실행계획이 동일하지 않다면? 실행계획의 변화로 코스트가 올라간 것일 수 있습니다.
감사합니다 집계쿼리가 이정도를 쓸줄 몰랐네요.