문서의 선택한 두 판 사이의 차이를 보여줍니다.
양쪽 이전 판 이전 판 다음 판 | 이전 판 | ||
study:oracle:datadb:3week_1:03 [2010/05/19 14:26] gwgwg |
study:oracle:datadb:3week_1:03 [2010/05/19 16:11] (현재) gwgwg |
||
---|---|---|---|
줄 47: | 줄 47: | ||
- 필수적으로 정렬 수행 | - 필수적으로 정렬 수행 | ||
- 그룹의 개수가 많을 수록 부하 증가 | - 그룹의 개수가 많을 수록 부하 증가 | ||
- | | + | - SORT OPERATION – SORT (JOIN) |
- | | + | - {{: |
+ | - SORT OPERATION – SORT (ORDER BY) | ||
+ | - {{: | ||
* 3.2.3.5. 합집합 (Union, Union-All) 실행계획 | * 3.2.3.5. 합집합 (Union, Union-All) 실행계획 | ||
- | - | + | - 서로 다른 쿼리에서 처리한 결과를 다시 모음 |
+ | - 액세스의 복잡성 측면에서 | ||
+ | - 한 곳에서 복잡하게 처리해야 할 것을 몇 개로 분리하여 수행하여 단순화 함 | ||
+ | - UNION VS UNION ALL | ||
+ | - UNION : 최소 공배수 집합을 만들어야 함으로 SORT(UNIQUE) 수행이 필요 | ||
+ | - UNION ALL : SORT(UNIQUE)가 필요 없음 | ||
+ | - 중간 결과 집합을 고려하여 각 사용 유무를 결정 | ||
* 3.2.3.6. 집합(Intersection) 실행계획 | * 3.2.3.6. 집합(Intersection) 실행계획 | ||
- | - | + | - 양쪽 집합 모두에 속하는 공통집합 (즉, 최대 공약수의 잡합) |
+ | - 각각의 집합에서 유일한 집합을 구해야함. | ||
+ | - Sort Merge Join과 유사한 방법을 사용하여 양쪽 집합을 유일하게 정렬한뒤 머지하고 있는것을 확인가능 | ||
* 3.2.3.7. 차집합(Minus) 실행계획 | * 3.2.3.7. 차집합(Minus) 실행계획 | ||
+ | - 어느 한쪽의 집합을 기준으로 다른 집합의 요소들을 제거 | ||
+ | - 서브쿼리, | ||
+ | - SELECT-LIST에 나타난 모든 컬럼들의 유일집합을 만들기 위해 MERGE작업과 유사한 실행계획 출력 | ||
+ | - SORT(UNIQUE) | ||
+ | - 단, 기본키 ‘=‘(EQUAL) 액세스는 SORT(UNIQUE)가 발생하지 않음 | ||
+ | |||
* 3.2.3.8. COUNT(STOPKEY) 실행계획 | * 3.2.3.8. COUNT(STOPKEY) 실행계획 | ||
+ | - 조건절에 ROWNUM을 사용했을 경우 발생 | ||
+ | - ROWNUM? | ||
+ | - 가상(PSEUDO) 컬럼 : 테이블에는 존재하지 않지만, DBMS가 제공한 컬럼 | ||
+ | - SYSDATE, USER, ROWID, LEVEL(CONNECT BY 사용시) | ||
+ |