UNION은 여러 조회 결과를 합치면서 중복 행을 제거하고, UNION ALL은 중복 행을 그대로 유지합니다.중복 여부는 원본의 주문번호가 아니라, SELECT로 선택한 결과 컬럼 전체를 기준으로 판단합니다.같은 상품을 같은 가격에 두 번 주문한 기록도, 식별자를 빼고 조회하면 하나로 합쳐질 수 있습니다. PostgreSQL“온라인 주문 세 건과 오프라인 주문 세 건을 합쳤는데, 왜 세 건만 나올까요?”쿼리는 정상적으로 실행됩니다. 오류 메시지도 없습니다. 그런데 건수가 줄어들고, 결과를 합산한 금액도 예상과 달라집니다.이때 UNION ALL로 바꾸면 해결되는 경우가 있지만, 이유를 모른 채 바꾸면 반대로 실제 중복 자료까지 모두 더할 수 있습니다.이번 글에서는 주문 여섯 건으로 직접 결과를 비교하면서,..