본문 바로가기
개발/MySQL(SQL)

[SQL] UNION과 UNION ALL... 속도

by 비손 2010. 3. 26.

UNION에 대해서는 다들 아시리라 생각됩니다.
테이블을 합쳐주는거죠~
UNION ALL도 같은 기능을 합니다~ 

차이가 있다면! 중복된 튜플을 허용하느냐(UNION ALL) 하지 않느냐(UNION)의 차이겠습니다.

둘의 속도 차이가 궁금했습니다. 그래서 제가 관리중인 사이트의 모든 게시판을 다 합쳐 봤습니다. 조금 미련한?? ㅋ

MySQL을 쓰고 있으며, 게시판의 튜플 수는... 17만건 정도 됩니다..

아래는 UNION ALL 과 UNION으로 튜플을 합쳐본 결과구요... 단위는 초단위 입니다... 각각 네번씩 테스트 했습니다.

UNION ALL
    1.6100
    1.8022
    2.0818
    1.6087

UNION
    4.9800
    3.8190
    3.6433
    3.6332 

와우... 속도 차이가 장난이 아닙니다 -_-;
아무래도 UNION은 합칠 때 검사하는 시간이 많이 걸리는 모양입니다~
중복되어도 상관 없는 경우에는 꼭 UNION ALL을 써야겠습니다...