[DB] UNION, UNION ALL 의 차이

Woong·2022년 9월 13일
0

DB

목록 보기
11/16

UNION, UNION ALL

  • UNION, UNION ALL 은 각각 두 쿼리의 결과를 합친다.

중복 제거의 차이

  • UNION 은 중복되는 row 를 제거한다.
    • 중복 제거의 기준은 모든 컬럼의 값이 동일한 경우
      • Temporary 테이블의 모든 컬럼으로 Unique Hash 인덱스 생성
      • 따라서 속도가 느린 편
  • UNION ALL 은 중복제거를 하지 않는다.
    • 중복제거를 하지 않으므로 UNION 보다 상대적으로 빠르다.

모델링에 대한 점검

  • 분리된 두 엔티티가 하나의 엔티티로 모델링되었어야하지 않는지 점검 필요
    • UNION 을 사용해야할 필요성
    • ex) 테이블을 논리적으로 파티셔닝하지 않고 테이블 자체를 분리해버린 경우 등

0개의 댓글