미스터 역마살

[ORACLE] UNION ALL 과 UNION의 차이 본문

Database/ORACLE

[ORACLE] UNION ALL 과 UNION의 차이

Mr. YeokMaSsal 2016. 7. 21. 00:50
728x90
반응형



오늘은 UNION 과 UNION ALL 에 대해 알아보자


먼저 UNION 은 UNION DISTINCT의 줄여서 UNION이라고 한다고 생각한다. 


따라서 중복제거 작업이 이루어지게 된다는 것이다.


UNION의 특징에 대해 몇가지 알아보자

 1. 두 테이블간의 결합시 사용하는 구문

 

 2. 중복되는 값이 존재하지 않음


 3. 중복을 제거하다보니 불가피하게 정렬작업을 하게됨


 4. 그로인해 소트부하가 생겨 성능에 좋지 않음. 따라서 인덱스가 없거나 대용량 테이블간의 결합이라면 성능에 악영향
    을 미치게 될 것이다.


하지만 UNION ALL의 경우는 중복을 허용하고 말그대로 테이블 두개를 딱! 하고 붙이는 것이기 때문에 정렬 작업이 일어나지 않는다. 

예를 들어



이런 테이블이 있다고 할 경우 


UNION ALL 의 경우

          

3이 중복되어 나온것을 확인 할 수 있으나



UNION 의 경우

           


이렇게 3이 중복에서 제거 된것을 확인 할 수 있다.





-끝-



728x90

'Database > ORACLE' 카테고리의 다른 글

[ORACLE] 오렌지에 더미데이터(데이터샘플) 생성하기  (0) 2016.07.23
해시테이블 자료구조  (0) 2016.07.22
[ORALCE] IOT(Index Organized Table)  (0) 2016.07.19
[ORACLE] HASH 조인  (0) 2016.07.18
[ORCALE] Sort Merge 조인  (0) 2016.07.18
Comments