데이터 조인

Tableau에서 분석하는 데이터는 대체로 특정 필드(즉, 열)로 관련된 테이블 모음으로 구성됩니다. 조인은 이러한 공통 필드에서 관련 데이터를 결합하는 방법입니다. 조인을 사용한 데이터 결합 결과는 대개 데이터의 열을 추가하여 가로로 확장되는 가상 테이블입니다.

참고: 테이블을 조인할 때 조인하는 필드의 데이터 유형은 동일해야 합니다. 테이블을 조인한 후 데이터 유형을 변경하면 조인이 끊어집니다.

예를 들어 출판사에 대한 데이터를 분석한다고 가정합니다. 출판사에는 두 개의 테이블이 있습니다. 첫 번째 테이블에는 ID 번호, 이름, 성 및 출판사 유형이 포함되어 있습니다. 두 번째 테이블에는 ID 번호, 가격, 로열티 및 발행된 책의 제목이 포함되어 있습니다. 두 테이블 간의 관련 필드는 ID입니다.

테이블 1

ID 이름 출판사 유형
20034 Adam Davis Independent
20165 Ashley Garcia Big
20233 Susan Nguyen Small/medium

테이블 2

책 제목 가격 로열티 ID
Weather in the Alps 19.99 5,000 20165
My Physics 8.99 3,500 20800
The Magic Shoe Lace 15.99 7,000 20034

이러한 두 테이블을 함께 분석하기 위해 ID를 기준으로 테이블을 조인하면 "지정된 출판사의 작가에게 지불된 로열티 금액"과 같은 질문에 대한 답을 구할 수 있습니다. 조인을 사용하여 테이블을 결합하면 분석에서 서로 다른 테이블의 데이터를 보고 관련 데이터를 사용할 수 있습니다.

ID 이름 출판사 유형 책 제목 가격 로열티
20034 Adam Davis Independent The Magic Shoe Lace 15.99 7,000
20165 Ashley Garcia Big Weather in the Alps 19.99 5,000

조인 유형 개요

일반적으로 Tableau에서 데이터를 결합하는 데 사용할 수 있는 네 가지 유형의 조인은 Inner(내부), Left(왼쪽), Right(오른쪽) 및 Full Outer(완전 외부)입니다. 조인할 수 있는 테이블과 사용할 수 있는 조인 유형은 연결된 데이터베이스나 파일에 따라 달라집니다. 데이터에 연결하여 캔버스에 적어도 두 개의 테이블을 배치한 후 조인 대화 상자를 확인하면 데이터가 지원하는 조인 유형을 알 수 있습니다.

조인 유형 결과 설명
Inner(내부)

Inner(내부) 조인을 사용하여 테이블을 결합할 경우 결과는 두 테이블 모두에 일치 항목이 있는 값을 포함하는 테이블입니다.

 

Left(왼쪽)

Left(왼쪽) 조인을 사용하여 테이블을 결합할 경우 결과는 왼쪽 테이블의 모든 값과 오른쪽 테이블에서 해당하는 일치 항목을 포함하는 테이블입니다.

왼쪽 테이블의 값이 오른쪽 테이블에 일치하는 항목이 없는 경우 데이터 그리드에 Null 값이 표시됩니다.

Right(오른쪽)

Right(오른쪽) 조인을 사용하여 테이블을 결합할 경우 결과는 오른쪽 테이블의 모든 값과 왼쪽 테이블에서 해당하는 일치 항목을 포함하는 테이블입니다.

오른쪽 테이블의 값이 왼쪽 테이블에 일치하는 항목이 없는 경우 데이터 그리드에 Null 값이 표시됩니다.

Full outer(완전 외부)

Full outer(완전 외부) 조인을 사용하여 테이블을 결합할 경우 결과는 두 테이블의 모든 값을 포함하는 테이블입니다.

한 테이블의 값이 다른 테이블에 일치하는 항목이 없는 경우 데이터 그리드에 Null 값이 표시됩니다.

Union Union은 조인 유형이 아니지만 한 테이블의 데이터 행을 다른 테이블에 추가하여 두 개 이상의 테이블을 결합할 수 있는 또 다른 방법입니다. 이상적인 경우, Union으로 결합하는 테이블은 필드 수가 같고 필드의 이름과 데이터 유형이 일치해야 합니다. Union에 대한 자세한 내용은 데이터 통합(Union)을 참조하십시오.

동일한 데이터베이스의 테이블 결합

분석해야 하는 테이블이 동일한 데이터베이스, 통합 문서(Excel의 경우) 또는 디렉터리(텍스트의 경우)에 있는 경우 다음 절차에 따라 테이블을 결합합니다. 동일한 데이터베이스의 테이블을 결합할 경우에는 데이터 원본에서 단일 연결만 필요합니다. 일반적으로 동일한 데이터베이스의 테이블을 조인하면 성능이 향상됩니다. 이는 동일한 데이터베이스에 저장된 데이터를 쿼리하면 실행 시간이 짧고 조인을 수행하는 데이터베이스의 기본 기능을 활용하기 때문입니다.

참고: 결합하려는 테이블의 세부 수준에 따라서는 데이터 통합을 대신 사용할 수도 있습니다. 자세한 내용은 데이터 통합을 참조하십시오.

테이블을 조인하려면

  1. Tableau Desktop에서: 시작 페이지의 연결에서 커넥터를 클릭하여 데이터에 연결합니다. 이 단계에서 Tableau 데이터 원본의 첫 번째 연결을 만듭니다.

    웹 작성에서 또는 탐색 페이지에서 만들기> 통합 문서를 클릭하여 새 통합 문서를 시작하고 데이터에 연결합니다. 이 단계에서 Tableau 데이터 원본의 첫 번째 연결을 만듭니다.

  2. 파일, 데이터베이스 또는 스키마를 선택한 다음 테이블을 두 번 클릭하거나 캔버스로 끌어 놓습니다.

    참고: 웹에서 작성하거나, 데이터 원본을 설정하는 중에 Tableau Desktop에서 Tableau Server에 로그인하는 경우 권장 테이블에 액세스하여 데이터를 보다 쉽게 통합할 수 있습니다. 자세한 내용은 인증되거나 권장되는 데이터 원본 및 테이블 사용을 참조하십시오.

  3. 다른 테이블을 두 번 클릭하거나 캔버스로 끌어 놓은 다음 조인 관계를 클릭하여 조인 절을 추가하고 조인 유형을 선택합니다.

  4. 데이터 원본에 사용된 사용 가능한 테이블 중 하나에서 필드를 선택하고, 조인 연산자를 선택한 다음 추가된 테이블에서 필드를 선택하여 하나 이상의 조인 절을 추가합니다. 조인 절을 검사하여 원하는 테이블 연결 방식이 맞는지 확인합니다.

    예를 들어 주문 정보 테이블과 반품 정보 테이블이 있는 데이터 원본에서 두 테이블에 모두 있는 Order ID 필드를 기준으로 두 테이블을 결합하기 위해 Inner(내부) 조인을 사용할 수 있습니다.

    참고: 조인 절의 오른쪽을 마우스오버할 때 표시되는 "x"를 클릭하면 원치 않는 조인 절을 삭제할 수 있습니다.

  5. 마쳤으면 조인 대화 상자를 닫습니다.

조인을 만든 후 데이터 그리드를 검토하여 조인이 예상한 결과를 생성하는지 확인하십시오. 자세한 내용은 데이터 그리드에서 조인 결과 검토를 참조하십시오. 조인 문제를 해결하려면 조인 문제 해결을 참조하십시오.

분석에 사용할 데이터 원본을 계속 준비합니다. 필드 이름 변경 및 재설정, 계산 만들기, 데이터 해석기를 사용하여 데이터 정리, 필드의 데이터 유형 변경 등의 작업을 수행할 수 있습니다.

조인 키의 null 값 정보

일반적으로 조인은 데이터베이스 수준에서 수행됩니다. 테이블을 조인하는 데 사용된 필드에 null 값이 포함된 경우 대부분의 데이터베이스에서는 null 값이 포함된 행 없이 데이터를 반환합니다. 하지만 Excel, 텍스트 또는 Salesforce 연결을 사용하는 단일 연결 데이터 원본을 설정한 경우에는 null 값을 포함하는 필드를 null 값을 포함하는 다른 필드와 조인할 수 있는 추가 옵션이 제공됩니다.

null 값을 기반으로 조인하려면

  • 데이터 원본을 설정한 후 데이터 원본 페이지에서 데이터 > Null 값에 Null 값 조인을 선택합니다.

예를 들어 조인할 두 데이터 테이블Orders_JuneOrders_July이 있다고 가정합니다.

Orders_June Orders_July
ID Location
1 New York
2  
3 Miami
ID Location
1 New York
2  
3 Miami

ID 필드와 Location 필드를 모두 사용하여 조인하는 경우 대부분의 데이터베이스에서 다음과 같은 데이터 테이블이 반환됩니다.

Join (of Orders_June and Orders_July)

ID Location ID(Orders_July) Location (Orders_July)
1 New York 1 New York
3 Miami 3 Miami

하지만 데이터 원본에서 단일 Excel, 텍스트 또는 Salesforce 연결을 사용하는 경우 데이터 > Null 값에 Null 값 조인을 선택하면 다음과 같은 테이블이 반환됩니다.

Join (of Orders_June and Orders_July)

ID Location ID(Orders_July) Location (Orders_July)
1 New York 1 New York
2 null 2 null
3 Miami 3 Miami

참고: 이 옵션은 텍스트, Excel 및 Salesforce 연결을 사용하는 단일 연결 데이터 원본에 사용할 수 있습니다. 이 옵션을 사용하는 데이터 원본에 두 번째 연결을 추가하는 경우 조인이 null 값이 있는 행을 제외하는 기본 동작으로 되돌아갑니다.

서로 다른 데이터베이스의 테이블 결합

Tableau 버전 10.0부터 분석해야 하는 테이블이 다른 데이터베이스, 통합 문서(Excel의 경우) 또는 디렉터리(텍스트의 경우)에 저장되어 있는 경우 다음 절차에 따라 교차 데이터베이스 조인을 사용하여 테이블을 결합할 수 있습니다.

교차 데이터베이스 조인을 사용하려면 먼저 다중 연결 데이터 원본을 설정해야 합니다. 즉, 테이블을 조인하기 전에 각 데이터베이스에 대한 새 연결을 만들어야 합니다. 여러 데이터베이스에 연결하는 경우 데이터 원본이 다중 연결 데이터 원본이 됩니다. 다른 내부 시스템을 사용하는 조직에 대한 데이터를 분석해야 하거나 내부 그룹과 외부 그룹 모두에서 별도로 관리하는 데이터로 작업해야 하는 경우 다중 연결 데이터 원본이 유용할 수 있습니다.

참고: 많은 경우 교차 데이터베이스 조인을 사용하는 것이 데이터를 결합하는 기본 방법입니다. 하지만 데이터 통합을 사용하여 데이터를 결합해야 하는 경우도 있습니다. 자세한 내용은 데이터 통합을 참조하십시오.

교차 데이터베이스 조인을 사용하여 테이블을 결합하면 데이터를 가져온 연결을 알 수 있도록 캔버스의 테이블과 데이터 그리드의 열에 색상이 지정됩니다.

서로 다른 데이터베이스의 테이블을 조인하려면

  1. Tableau Desktop에서: 시작 페이지의 연결에서 커넥터를 클릭하여 데이터에 연결합니다. 이 단계에서 Tableau 데이터 원본의 첫 번째 연결을 만듭니다.

    웹 작성에서: 또는 탐색 페이지에서 만들기> 통합 문서를 클릭하여 새 통합 문서를 시작하고 데이터에 연결합니다. 이 단계에서 Tableau 데이터 원본의 첫 번째 연결을 만듭니다.

  2. 파일, 데이터베이스 또는 스키마를 선택한 다음 테이블을 두 번 클릭하거나 캔버스로 끌어 놓습니다.

  3. 왼쪽 패널의 연결에서 추가 단추(웹 작성의 )를 클릭하여 Tableau 데이터 원본에 새 연결을 추가합니다. 다른 데이터베이스에 저장된 관련 데이터가 있는 경우 새 연결이 필요합니다.

    참고: 원하는 커넥터가 연결 목록에서 없는 경우 조인하려는 원본 조합에 교차 데이터베이스 조인이 지원되지 않는 것입니다. 여기에는 큐브 데이터(예: Microsoft Analysis Services), 대부분의 추출 전용 데이터(예: Google Analytics 및 OData) 및 Tableau Server 데이터 원본에 대한 연결이 포함됩니다. 테이블을 조인하는 대신 데이터 통합을 사용해 보십시오. 자세한 내용은 데이터 통합을 참조하십시오.

  4. 데이터 원본에 사용된 사용 가능한 테이블 중 하나에서 필드를 선택하고, 조인 연산자를 선택한 다음 추가된 테이블에서 필드를 선택하여 하나 이상의 조인 절을 추가합니다. 조인 절을 검사하여 원하는 테이블 연결 방식이 맞는지 확인합니다.

    예를 들어 주문 정보 테이블과 반품 정보 테이블이 있는 데이터 원본에서 두 테이블에 모두 있는 Order ID 필드를 기준으로 두 테이블을 조인할 수 있습니다. 조인 유형을 선택합니다.

    참고: 조인 절의 오른쪽을 마우스오버할 때 표시되는 "x"를 클릭하면 원치 않는 조인 절을 삭제할 수 있습니다.

  5. 마쳤으면 조인 대화 상자를 닫습니다.

    테이블과 열에 데이터를 가져온 연결을 나타내는 색상이 지정됩니다.

교차 데이터베이스 조인을 만든 후에는 분석에 사용할 다중 연결 데이터 원본을 준비합니다. 필드 이름 변경 및 재설정, 계산 만들기, 데이터 해석기를 사용하여 데이터 정리, 필드의 데이터 유형 변경 등의 작업을 수행할 수 있습니다.

조인 문제를 해결하려면 조인 문제 해결을 참조하십시오.

교차 데이터베이스 조인을 위한 성능 향상

Tableau Desktop 및 Tableau Server 버전 2019.3부터 단일 파일 연결 및 단일 데이터베이스 연결에서 데이터를 조인할 때 Tableau가 Hyper 대신 연결된 데이터베이스를 사용하여 조인을 수행할 수 있게 하여 성능을 향상시킬 수 있습니다. 이 옵션을 사용하도록 설정하면 Tableau가 가장 빠른 옵션(Hyper 또는 연결된 데이터베이스)을 선택합니다. Tableau가 연결된 데이터베이스를 사용하는 경우 파일 연결의 데이터가 데이터베이스의 임시 테이블로 이동되고 거기에서 조인이 수행됩니다.

중요: 데이터가 일시적으로 Tableau 외부로 이동되기 때문에 연결된 데이터베이스가 신뢰할 수 있는 출처에서 제공되는지 확인해야 합니다.

이 옵션은 다음 조건이 충족되는 경우에만 사용할 수 있습니다.

  • 파일 크기가 1MB 미만입니다.
  • 파일이 Microsoft Excel, PDF 또는 텍스트(.csv, .txt, .tsv 또는 .tab) 파일 형식입니다.
  • 연결된 데이터베이스는 다음 중 하나입니다.
    • Microsoft SQL Server
    • Oracle
    • PostgreSQL
    • Vertica
  • 웹 작성에서: 사용자가 웹 작성을 사용하도록 허용 옵션을 사용하도록 설정되어 있습니다.

    사이트 관리자도 Tableau Server의 설정 > 일반 탭에 있는 교차 데이터베이스 조인 옵션을 설정하여 사용자가 사용할 수 있는 옵션을 구성할 수 있습니다. 이러한 설정에 대한 자세한 내용은 Tableau Server 도움말에서 사이트의 웹 작성 액세스 설정을 참조하십시오.

교차 데이터베이스 조인을 위한 성능 옵션 사용

  1. Tableau Desktop에서: 시작 페이지의 연결 아래에서 지원되는 파일 형식이나 지원되는 데이터베이스 형식에 연결합니다. 이 단계에서 Tableau 데이터 원본의 첫 번째 연결을 만듭니다.

    웹 작성에서: 또는 탐색 페이지에서 만들기> 통합 문서를 클릭하여 새 통합 문서를 시작하고 데이터에 연결합니다. 이 단계에서 Tableau 데이터 원본의 첫 번째 연결을 만듭니다.

  2. 연결하려는 파일 또는 데이터베이스를 선택한 다음 테이블을 두 번 클릭하거나 캔버스로 끌어 놓습니다.

  3. 왼쪽 패널의 연결에서 추가 단추(웹 작성의 )를 클릭하여 Tableau 데이터 원본에 두 번째 연결을 추가합니다.

    데이터 원본 탭에서 캔버스의 오른쪽 상단에 교차 데이터베이스 조인 옵션이 표시됩니다.

    참고: 이 옵션이 표시되지 않으면 지원되는 데이터 원본만 사용하고 있으며 데이터 원본이 두 개(파일 하나와 데이터베이스 형식 하나)인지 확인하십시오. 그렇지 않으면 사이트 관리자가 교차 데이터베이스 조인 구성 옵션을 Tableau만 해당으로 설정한 것일 수 있습니다.

  4. Tableau가 조인을 수행하는 방식을 변경하려면 교차 데이터베이스 조인 옵션 옆에 있는 편집을 클릭합니다.
  5. 교차 데이터베이스 조인 대화 상자에서 다음 옵션 중 하나를 선택한 다음 확인을 클릭합니다.

    • Tableau 또는 기존 데이터베이스 사용. 이 옵션을 사용하면 조인을 수행하는 가장 빠른 옵션(Hyper 또는 연결된 데이터베이스)이 Tableau에 의해 자동 선택될 수 있습니다.

    • Tableau만 사용. 이 옵션은 기본값이며 항상 Hyper를 사용하여 조인을 수행합니다.

      사용자가 선택한 항목에 따라 교차 데이터베이스 조인 옵션이 기본 옵션인 Tableau 사용(Hyper 사용)에서 새 옵션인 데이터베이스 사용으로 변경됩니다.

      참고: Tableau 또는 기존 데이터베이스 사용을 선택한 경우 Tableau가 조인을 수행할 때 가장 빠른 옵션을 선택합니다. Tableau가 Hyper를 사용하여 조인을 수행하는 경우 이 프로세스는 백그라운드에서 수행되며 조인이 수행된 위치를 식별하는 표시기가 나타나지 않습니다.

  6. 데이터 원본에 사용된 사용 가능한 테이블 중 하나에서 필드를 선택하고, 조인 연산자를 선택한 다음 추가된 테이블에서 필드를 선택하여 하나 이상의 조인 절을 추가합니다. 조인 절을 검사하여 원하는 테이블 연결 방식이 맞는지 확인합니다.

다중 연결 데이터 원본 작업 관련 정보

다중 연결 데이터 원본으로 작업하는 것은 이 섹션에서 설명하는 몇 가지 주의 사항을 제외하면 다른 데이터 원본으로 작업하는 것과 같습니다.

연결 안에서 데이터 통합(Union)

데이터를 Union으로 통합하려면 동일한 연결에서 텍스트 테이블 또는 Excel 테이블을 사용해야 합니다. 즉, 서로 다른 데이터베이스의 테이블은 Union으로 통합할 수 없습니다. Tableau Desktop에서는 서로 다른 폴더에 있는 서로 다른 Excel 통합 문서와 파일 간에서 테이블을 Union으로 통합할 수 있습니다. 자세한 내용은 와일드카드 검색을 사용한 테이블 통합(Union)(Tableau Desktop)을 참조하십시오.

서로 다른 데이터베이스의 데이터를 유니온해야 한다면 Tableau Prep을 사용하십시오.

데이터 정렬

데이터 정렬은 문자열 값을 비교하고 정렬하는 방식을 결정하는 데이터베이스의 규칙을 나타냅니다. 대부분의 경우 데이터 정렬은 데이터베이스에서 처리됩니다. 하지만 교차 데이터베이스 조인으로 작업할 때에는 데이터 정렬이 서로 다른 열을 조인할 수 있습니다.

예를 들어 교차 데이터베이스 조인에서 SQL Server의 대/소문자를 구분하는 열과 Oracle의 대/소문자를 구분하지 않는 열로 구성된 조인 키를 사용한다고 가정합니다. 이와 같은 경우 Tableau에서는 값을 잘못 해석하는 일을 최소화하기 위해 한 데이터 정렬을 다른 데이터 정렬에 매핑합니다.

교차 데이터베이스 조인에는 다음과 같은 규칙이 사용됩니다.

  • 한 열에서 ICU(International Components for Unicode)의 데이터 정렬 표준을 사용하는 경우 Tableau에서는 다른 열의 데이터 정렬을 사용합니다.

  • 모든 열이 ICU의 데이터 정렬 표준을 사용하는 경우 Tableau에서는 왼쪽 테이블의 열 데이터 정렬을 사용합니다.

  • ICU의 데이터 정렬 표준을 사용하는 열이 없으면 Tableau에서는 이진 데이터 정렬을 사용합니다. 이진 데이터 정렬에서는 데이터베이스의 로캘과 열의 데이터 유형에 따라 문자열 값을 비교하고 정렬하는 방식이 결정됩니다.

Microsoft Excel 데이터로 작업할 때 조인을 수행하면서 가나를 구분하는 일본어 데이터와 같이 데이터의 대/소문자 구분을 유지해야 한다면 데이터 메뉴에서 대/소문자 유지(Excel) 옵션을 사용하도록 설정할 수 있습니다.

이 옵션을 선택하면 Tableau가 Excel 데이터 원본의 값에 대한 대/소문자 구분을 유지하고 대/소문자가 다른 값을 결합하는 대신 고유하게 식별하므로 행 수가 달라집니다.

예를 들어 한 워크시트에 "House" 값이 있고 다른 워크시트에 "House", "house" 및 "houSe" 값이 있다고 가정합니다. 기본적으로 두 테이블을 조인하면 Tableau는 두 번째 워크시트의 문자 대/소문자 차이를 무시하고 두 번째 워크시트의 "House", "house" 및 "houSe"를 첫 번째 워크시트의 "House"와 조인합니다.

대/소문자 유지(Excel) 옵션을 사용하도록 설정하고 테이블을 조인하면 Tableau가 문자 대/소문자 차이를 인식합니다. 이 경우 조인이 첫 번째 워크시트의 "House"와 두 번째 워크시트의 "House" 값만 일치시키고 "house" 및 "houSe"는 고유한 개별 값으로 읽기 때문에 조인 결과에 더 적은 수의 결과가 표시됩니다.

참고: 이 옵션은 모든 Tableau 지원 언어에서 사용할 수 있으며 사용 중인 운영 체제의 로캘에 종속되지 않습니다. 이 옵션은 Microsoft Excel 데이터 원본에만 사용할 수 있습니다.

계산과 다중 연결 데이터 원본

계산의 하위 집합만 다중 연결 데이터 원본에 사용할 수 있습니다.

Tableau Desktop에서: 다음 두 조건을 충족하는 경우 특정 계산을 사용할 수 있습니다.

  • 다중 연결 데이터 원본의 모든 연결에서 지원됩니다.

  • Tableau 추출에서 지원됩니다.

웹 작성에서(Tableau Online 및 Tableau Server): 다중 연결 데이터 원본의 모든 연결에서 지원되는 특정 계산을 사용할 수 있습니다.

저장 프로시저

다중 연결 데이터 원본에는 저장 프로시저를 사용할 수 없습니다.

연결 안에서 데이터 피벗

데이터를 피벗하려면 동일한 연결에서 텍스트 열 또는 Excel 열을 사용해야 합니다. 즉, 서로 다른 데이터베이스의 열을 피벗에 포함시킬 수 없습니다.

추출 파일을 첫 번째 연결로 만들기(Tableau Desktop만 해당)

다중 연결 데이터 원본에서 추출 파일에 연결할 때 추출(.tde 또는 .hyper) 파일에 대한 연결이 첫 번째 연결인지 확인하십시오. 그러면 기본 속성, 계산된 필드, 그룹, 별칭 등에 대한 변경 사항을 비롯한 추출에 속한 모든 사용자 지정이 보존됩니다.

참고: 다중 연결 데이터 원본에서 여러 추출 파일에 연결해야 하는 경우 첫 번째 연결의 추출에 포함된 사용자 지정만 보존됩니다.

파일 기반 데이터에 대한 연결이 포함된 다중 연결 데이터 원본의 추출(Tableau Desktop만 해당)

Excel 같은 파일 기반 데이터에 대한 연결이 포함된 다중 연결 데이터 원본의 추출을 게시하는 경우 외부 파일 포함 옵션을 선택하면 파일 기반 데이터의 복사본이 서버에 데이터 원본의 일부로 저장됩니다. 이 경우 파일 기반 데이터의 복사본을 다운로드할 수 있으며 다른 사용자가 해당 콘텐츠에 액세스할 수 있습니다. 파일 기반 데이터에 추출에서 의도적으로 제외한 민감한 정보가 있는 경우 데이터 원본을 게시할 때 외부 파일 포함을 선택하지 마십시오.

데이터 원본 게시에 대한 자세한 내용은 데이터 원본 게시를 참조하십시오.

쿼리 및 교차 데이터베이스 조인 정보

각 연결에 대해 Tableau는 조인의 데이터베이스에 대한 독립적인 쿼리를 보냅니다. 결과는 추출 파일의 형식으로 임시 테이블에 저장됩니다.

예를 들어 두 테이블 dbo.listings 및 reviews$에 대한 연결을 만든다고 가정합니다. 두 테이블은 서로 다른 두 데이터베이스인 SQL Server와 Excel에 저장되어 있습니다. Tableau는 각 연결에서 독립적으로 데이터베이스를 쿼리합니다. 데이터베이스는 쿼리를 수행하고 필터 및 계산 같은 사용자 지정을 적용하며 Tableau는 각 연결의 결과를 임시 테이블에 저장합니다. 이 예제에서 FQ_Temp_1은 SQL Server에 대한 연결의 임시 테이블이고 FQ_Temp_2는 Excel에 대한 연결의 임시 테이블입니다.

SQL Server 테이블

Excel 테이블

교차 데이터베이스 조인을 수행하면 Tableau Desktop에서 두 임시 테이블이 조인됩니다. Tableau가 교차 데이터베이스 조인을 수행하려면 이 두 임시 테이블이 필요합니다.

테이블이 조인된 후 "topn" 필터를 적용하여 데이터 그리드에 처음 1,000개 행만 표시되도록 값 수를 제한합니다. 이 필터는 데이터 그리드의 응답성과 데이터 원본 페이지의 전체적인 성능을 유지기 위해 적용됩니다.

조인된 테이블

데이터 그리드에서 조인 결과 검토

캔버스에서 조인을 만든 후 데이터 그리드를 검토하여 조인이 예상한 결과를 생성하는지 확인하십시오. 데이터 격자에 예상과 다른 데이터가 표시되는 경우 조인을 수정해야 할 수 있습니다.

데이터 격자의 결과

  • 데이터 없음: 데이터 격자에 데이터가 표시되지 않는 경우 조인 조건에 사용되는 조인 유형이나 조인 필드를 변경해야 할 수 있습니다. 조인의 필드 간에서 불일치가 의심되는 경우 대신 계산을 사용하십시오. 자세한 내용은 계산을 사용하여 조인의 필드 간 불일치 해결을 참조하십시오.

  • 중복 데이터: 중복 데이터가 표시되는 경우 몇 가지 작업을 수행할 수 있습니다. 예를 들어 분석에 사용하는 측정값의 집계를 변경하거나, 계산을 사용하거나, 데이터 통합을 대신 사용합니다. 데이터 통합에 대한 자세한 내용은 데이터 통합을 참조하십시오.

  • 누락된 데이터: 데이터 격자에서 일부 데이터가 누락되는 경우 조인 조건에 사용되는 조인 유형이나 조인 필드를 변경해야 할 수 있습니다. 이전과 마찬가지로, 조인의 필드 간에서 불일치가 의심되는 경우 계산을 대신 사용하십시오. 자세한 내용은 계산을 사용하여 조인의 필드 간 불일치 해결을 참조하십시오.

  • 많은 null 값: 예상하지 못한 많은 null 값이 표시되는 경우 조인 유형을 Full Outer(완전 외부) 유형에서 Inner(내부) 유형으로 변경해야 할 수 있습니다.

  • 한 테이블이 모두 null 값: 한 테이블의 모든 값이 null인 경우 조인하는 두 테이블 간에 일치 항목이 없습니다. 원하는 결과가 아니라면 조인 유형을 변경해 보십시오.

계산을 사용하여 조인의 필드 간 불일치 해결

조인 조건의 필드가 일치하지 않는 경우 즉, 조인 조건에 사용된 필드의 값 간에 불일치가 있는 경우 데이터 격자가 조금만 표시되거나 전혀 표시되지 않을 수 있습니다. 필드 간 불일치는 여러 이유로 발생할 수 있지만 필드의 문자열 값 또는 날짜 값의 형식이 일치하지 않아 발생하는 경우가 많습니다. 많은 경우 계산을 사용하여 조인의 필드 간 불일치를 해결할 수 있습니다.

집계 함수와 테이블 계산 함수를 제외한 대부분의 함수는 계산에서 조인 조건의 필드를 만들고 교체하는 데 사용할 수 있습니다.

참고: QuickBooks Online, Marketo, Oracle Eloqua, Anaplan, ServiceNow ITSM 및 웹 데이터 커넥터에는 조인 계산이 지원되지 않습니다.

문자열 불일치

문자열 데이터로 작업할 때 일반적인 불일치 시나리오는 조인 조건의 한 쪽에 있는 필드 중 하나가 조인 조건의 반대 쪽에 있는 두 개 이상의 필드와 같을 때 발생합니다. 이 경우 계산을 사용하여 두 필드를 결합하여 형식이 조인 조건의 다른 필드와 일치하게 만들 수 있습니다.

예를 들어 다음과 같은 데이터가 포함된 두 테이블을 조인한다고 가정합니다.

Patron Contact
이름 지점 가입 연도 차용 단위 수수료 제안된 한도
Alan

Wang

North 2000 1 0 15
John Smith North 2000 36 3.50 15
Ashley Garcia South 2000 243 11.30 15
Fred Suzuki North 2000 52 .90 15
Name Member number Emergency contact Relationship Emergency number
Adam Davis 555-0324 Ellen Davis 파트너 555-0884
Alan Wang 555-0356 Jean Wilson Mother 555-0327
Fred Suzuki 555-0188 Jim Suzuki Brother 555-3188

Henry Wilson

555-0100 Laura Rodriquez 파트너 555-0103
Michelle Kim 555-0199 Steven Kim 파트너 555-0125

두 테이블 간의 공통 필드는 이름으로 보입니다. 그러나 Patron 테이블에서는 성과 이름이 별도의 열에 있고 Contact 테이블에서는 성 및 이름이 같은 열에 있습니다. 이름으로 테이블을 조인하려면 조인 조건의 좌변에서 계산을 사용하여 성 및 이름 열을 병합합니다.

결과는 조인 대화 상자에서만 액세스할 수 있는 조인 조건의 좌변에 있는 계산된 필드가 됩니다. 이 계산은 Patron 테이블의 필드를 조인 조건의 우측에 있는 Contact 테이블의 필드 형식과 일치하도록 변환합니다.

조인에서 계산을 사용하여 다음과 같은 결합된 테이블을 생성합니다. 

이름 지점 가입 연도 차용 단위 수수료 제안된 한도 이름 전화 번호
Alan Wang North 2000 1 0 15 Alan Wang 555-0356
Fred Suzuki North 2000 52 .90 15 Fred Suzuki 555-0188

날짜 불일치

날짜 데이터로 작업할 때 일반적인 불일치 시나리오는 조인 조건에 있는 한 필드의 날짜 값이 세부 수준에서 조인 조건에 있는 다른 필드와 다르게 표현될 때 발생합니다. 이 경우 조인 조건에서 계산을 사용하여 조인 조건의 한 쪽에 있는 필드의 형식을 조인 조건의 다른 쪽에 있는 필드의 형식과 일치하도록 변경할 수 있습니다.

예를 들어 다음과 같은 두 데이터 테이블이 있다고 가정합니다.

Projector rental Patron
날짜 예약 유형 요청자 ID

1/1/2000

개인 233445589
1/28/2002 교육기관 365948999
1/29/2002 비영리 233448888
12/5/2002 교육기관 365948999
5/5/2003 비영리 334015476
3/12/2004

비영리

334015476
3/15/2006 도시 211896980
7/8/2007 교육기관 334015476
1/4/2008 개인 560495523
3/8/2009 비영리 233445566
2/14/2014

비영리

233445566
12/21/2015 비영리 233445566
2/10/2016 비영리 233445566
ID 이름 지점 가입 연도 차용 단위 수수료 제안된 한도
454613981 Adam Davis West 2012 25 0 10
232502870 Alan

Wang

North 2000 1 0 15
298000916 Amanda Smith North 2001 54 6.4 15
233445566 Ashley Garcia South 2000 243 11.30 15
900005122 Brian Frank East 2011 12 .10 10
921491769 Elizabeth Johnson West 2010 19 .5 10
233445589 Fred Suzuki North 2000 52 .90 15
344556677 Henry Wilson South 2005 3 .2 15
939502870 Jane Johnson West 2017 0 0 10
233448978 John Smith North 2000 36 3.50 15

새 후원 회원 거동에 대해 자세히 알아보려면 Patron 테이블을 Projector Rental 테이블에 조인하여 신규 회원으로 가입하는 동기가 되는 도서관 서비스에 대한 정보를 얻을 수 있습니다. 두 테이블 간의 공통 필드는 "Date" 및 "Member since"로 보입니다. 하지만 각 필드의 날짜 값은 서로 다른 세부 수준에서 표현됩니다. 두 테이블을 관련 날짜 필드를 기준으로 조인하려면 조인 조건의 각 변에 있는 계산에서 DATE 함수 조합을 사용하여 각 필드의 세부 수준을 일치하게 만듭니다.

조인에서 계산을 사용하여 다음과 같은 결합된 테이블을 생성합니다.

날짜 예약 유형 요청자 ID ID 이름 지점 가입 연도 차용 단위 수수료 제안된 한도

1/1/2000

개인 233445589 232502870 Alan Wang

North

2000 1 0.00 15
1/1/2000 개인 233445589 233445589 Fred Suzuki North 2000 52 0.90 15
1/1/2000 개인 233445589 233445566 Ashley Garcia South 2000 243 11.30 15
1/1/2000 개인 233445589 233448978 John Smith North 2000 36 3.50 15

후원 회원이 회원으로 가입한 동일한 연도에 프로젝터를 렌트했는지 여부를 확인하기 위해 ID에 기반하는 조인에 하나 이상의 절을 추가합니다.

추가 조인 조건의 결과는 후원 회원 한 명만 프로젝터를 렌트하기 위해 회원으로 가입했음을 보여 줍니다.

날짜 예약 유형 요청자 ID ID 이름 지점 입사년도 차용 단위 수수료 제안된 한도
1/1/2000 개인 233445589 233445589 Fred Suzuki North 2000 52 0.90 15

조인 문제 해결

값 초과 계산 또는 중복 데이터

다중 테이블에 연결하여 함께 조인하는 경우 데이터의 비정규화된 버전을 설정합니다. 일부 경우 Tableau는 다중 테이블을 한 테이블로 간주합니다. 다중 테이블이 한 테이블로 간주되면 테이블이 조인된 후 모든 테이블을 쿼리합니다. 이 때문에 값이 초과 계산될 수 있습니다.

예를 들어 두 테이블을 가정합니다. 첫 번째 테이블에는 직원 ID와 급여 같은 직원 정보가 들어 있습니다. 두 번째 테이블에는 부서 이름 같은 조직 정보가 들어 있습니다.

테이블 1

직원 ID 이름 급여
20106 Kim, Michelle 63,000
20107 Wilson, Henry 61,000
20108 Smith, John 65,000

테이블 2

부서 고용일 직원 ID 조직
Development 6/16/2016 20289 Strategy
Support 7/28/2015 20107 Operations
Support 8/05/2016 20299 Operations
Sales 8/25/2016 20107 Operations

Employee ID를 기준으로 두 테이블을 조인하는 경우 한 직원이 여러 부서에 연결되기 때문에 직원 급여가 여러 번 계산될 수 있습니다.

직원 ID 이름 급여 부서 고용일 조직
20107 Wilson, Henry 61,000 Support 7/28/2015 Operations
20107 Wilson, Henry 61,000 Sales 8/25/2016 Operations

이 문제를 해결하려면 다음 작업 중 하나를 수행할 수 있습니다.

  • 집계 변경: 분석에 따라 MIN 또는 AVG 집계를 사용하여 초과 계산을 제거할 수 있습니다.

    예를 들어 Salary의 집계를 SUM에서 MIN으로 변경하거나, SUM에서 AVG로 변경합니다.

  • 중복 값을 제거하는 계산된 필드 만들기: 중복된 필드의 합계를 중복을 유발하는 필드의 인스턴스 수로 나누는 계산을 만들 수 있습니다.

    예를 들어 Salary 값은 Wilson, Henry에 대한 Employee ID 인스턴스 수만큼 중복됩니다. 이 경우 뷰에서 Salary를 다음 수식을 사용하는 계산된 필드로 바꿉니다 SUM ([Salary])/ COUNT ([Employee ID]).

    세부 수준 식을 사용하여 중복 데이터를 삭제할 수도 있습니다. 자세한 내용은 Tableau 기술 자료에서 LOD 계산을 사용하여 중복 데이터 제거를 참조하십시오.

  • 데이터 통합: 데이터가 중복될 수 있는 조인을 만드는 대신에 공통 필드에서 데이터를 통합할 수 있습니다. 자세한 내용은 데이터 통합을 참조하십시오.

  • 사용자 지정 SQL 사용: Tableau는 사용자 지정 SQL을 사용하여 데이터 원본의 여러 테이블에 연결하는 기능을 지원합니다. 테이블을 조인하기 전에 GROUP BY 절을 사용하여 테이블을 사전 집계할 수 있습니다. 이 옵션을 사용하려면 SQL 쿼리 작성에 대한 어느 정도의 지식이 있어야 하며 경우에 따라 데이터베이스 전문가의 도움이 필요합니다. Tableau에서 사용자 지정 SQL 쿼리에 연결하는 방법에 대한 자세한 내용은 사용자 지정 SQL 쿼리에 연결을 참조하십시오.

끊어진 테이블 조인 및 교차 데이터베이스 조인

동일한 데이터 원본에서 또는 교차 데이터베이스 조인을 사용하여 테이블을 조인하기 전에 조인 키의 데이터 유형이 일치하는지 확인하십시오. 조인 키의 데이터 유형이 일치하지 않으면 조인이 분리되고 빨간색 느낌표와 "조인 필드 간의 유형이 일치하지 않는다"는 오류 텍스트가 표시됩니다. 분리된 조인을 수정하려면 다음 권장 방법 중 하나를 사용합니다.

  • 조인 계산을 만들면 조인 대화 상자에서 필드의 형식(데이터 유형 포함)을 변경하여 조인 키가 일치하게 만들 수 있습니다. 조인 계산은 결합하려는 하나 이상의 테이블에서 조인 키의 형식을 수정하는 데 사용할 수 있는 계산의 하위 집합을 지원합니다. 조인 계산을 만들려면 분리된 조인이 있는 테이블 간의 조인 관계를 클릭하고 형식을 수정해야 하는 필드를 클릭한 다음 조인 계산 만들기를 선택합니다. 자세한 내용은 계산을 사용하여 조인의 필드 간 불일치 해결을 참조하십시오.

  • 텍스트 또는 Excel 기반 데이터의 경우 데이터 격자의 데이터 유형 메뉴를 사용하여 조인 키에 있는 텍스트 또는 Excel 필드의 데이터 유형을 수정합니다.

  • Tableau Desktop만 해당: 대부분의 연결에서 사용자 지정 SQL로 변환 옵션을 사용하여 조인 키에 있는 필드 중 하나의 데이터 유형을 CAST () 같은 함수를 통해 변경할 수 있습니다. 사용자 지정 SQL로 변환 옵션은 데이터 원본에 포함된 연결이 하나인 경우에만 사용할 수 있습니다. 연결이 두 개인 경우 두 번째 연결을 제거한 다음 데이터 > 사용자 지정 SQL로 변환을 선택합니다.

피드백을 제공해 주셔서 감사합니다! 피드백을 제출하는 동안 오류가 발생했습니다. 다시 시도하거나 메시지를 보내주십시오.