두 표를 합쳤는데 데이터가 늘어나는 이유는 뭔가요?

두 표를 연결한 뒤 같은 주문이 여러 번 보인다면 연결 기준을 확인하세요. 주문 두 건과 배송지 세 곳의 예제로 결과가 늘어난 원인을 찾고 필요한 연결을 정할 수 있습니다.

설명도: 같은 고객 ID가 있는 주문 두 개와 배송지 세 개
가상의 데이터로 구성한 설명도입니다. 실제 화면 캡처가 아닙니다.

주문 두 건에 배송지를 붙였는데 결과가 여섯 건이 됐나요? 같은 고객에게 배송지가 세 곳 있으면 주문마다 세 곳이 모두 연결될 수 있습니다. JOIN SHEET의 ‘연결 상태 확인’에서 반복되는 기준값을 살펴보고 주문에 맞는 배송지를 구분해 보세요.

주문 두 개가 여섯 개로 보이는 이유

고객 C10의 주문은 O10과 O20입니다. 배송지 목록에는 같은 고객의 본사·창고·매장이 있습니다. 주문에는 배송지 정보가 없으므로 고객 ID만으로는 어느 배송지를 연결해야 할지 판단할 수 없습니다.

데이터 연결은 조건에 맞는 항목을 모두 붙입니다. 첫 번째로 찾은 값만 가져오는 조회와 동작이 다릅니다. 고객 ID만 기준으로 삼으면 본사·창고·매장이 모두 연결됩니다. 아래 가상 예제로 어떤 조합이 만들어지는지 확인해 보겠습니다.

연결 상태에서 반복되는 기준값 확인하기

  1. 주문의 ‘고객ID’를 배송지의 ‘등록ID’에 연결하고 ‘일치하는 데이터만’을 선택합니다.
  2. ‘결과 미리보기’에서 O10과 O20이 각각 몇 번 나타나는지 확인합니다.
  3. 선 위 메뉴에서 ‘연결 상태 확인’을 열고 ‘확인하기’를 누릅니다.
  4. ‘상세 수치와 예시’를 펼쳐 ‘중복 기준값이 있는 데이터’와 ‘중복 기준값 수’를 확인합니다. 이 예제에서는 같은 고객 ID를 가진 데이터가 주문 2개·배송지 3개입니다. 반복된 ID의 종류는 C10 하나이므로 ‘중복 기준값 수’는 양쪽 모두 1개입니다.
  5. 원본에서 실제로 반복된 값을 확인합니다. 주문에 C10이 2번, 배송지에 3번 나오는지 살펴보세요.

설명도: 고객 ID 연결 후 연결 상태 확인에서 중복 기준값을 점검하는 순서

주문마다 배송지 세 개가 연결됩니다

주문번호 고객ID 배송지
O10 C10 본사
O10 C10 창고
O10 C10 매장
O20 C10 본사
O20 C10 창고
O20 C10 매장

O10에 배송지 세 곳, O20에도 세 곳이 연결돼 총 2 × 3 = 6개가 됩니다. 주문번호는 반복되지만 배송지는 서로 다릅니다. 하나만 남기기 전에 각 주문이 실제로 어느 곳에 배송되는지 확인해야 합니다.

설명도: 두 주문에 세 배송지가 각각 연결되어 여섯 개가 되는 구조

주문에 맞는 배송지를 고르려면

주문에 배송지 코드가 있다면 고객 ID와 배송지 코드를 함께 연결하세요. 두 값이 모두 맞는 배송지가 붙습니다. 모든 주문을 기본 배송지로 보내는 경우에는 배송지 시트에서 기본 배송지만 남긴 뒤 연결하세요. 주문에 배송지를 구분할 정보가 없다면 원본에 그 정보를 먼저 준비해야 합니다.

기준을 수정한 뒤에는 ‘결과 미리보기’에서 O10과 O20에 원하는 주소가 붙었는지 확인하세요. ‘연결 상태 확인’의 수치는 선택한 두 시트 사이의 연결에 대한 정보입니다. 다른 시트까지 연결했거나 결과에 필터를 적용했다면 최종 데이터 수가 달라질 수 있으므로 결과 미리보기에서 따로 확인해야 합니다.

내 파일로 시작해 보세요

JOIN SHEET에서 시작하기 ↗

Excel·CSV 작업은 PC에서 이용해 주세요.
새 창에서 열리며 작업 중인 데이터를 바꾸지 않습니다.

예제 확인일:

출처

Why do multiple-table joins produce duplicate rows? — Stack Overflow

Power query merge tables results in duplicate rows — Reddit r/excel

표를 연결한 뒤 데이터가 늘어나는 질문을 참고해 가상의 주문·배송지 예제로 구성했습니다.