다음을 통해 공유


내부 조인

적용 대상: ✅Microsoft Fabric✅Azure Data ExplorerAzure MonitorMicrosoft Sentinel

조인 맛은 inner SQL 세계의 표준 내부 조인과 같습니다. 출력 레코드는 왼쪽의 레코드가 오른쪽에 있는 레코드와 동일한 조인 키를 사용할 때마다 생성됩니다.

조인의 작동 방식을 보여 주는 다이어그램

구문

LeftTable | join kind=inner [ 힌트 ] RightTable 조건 on

구문 규칙에 대해 자세히 알아봅니다.

매개 변수

이름 Type 필수 설명
LeftTable string ✔️ 행을 병합할 외부 테이블이라고도 하는 왼쪽 테이블 또는 테이블 형식 식입니다. $left로 표시됩니다.
힌트 string 행 일치 작업 및 실행 계획의 동작을 제어하는 이름 = 형식의 공백으로 구분된 조인 힌트가 0개 이상 있습니다. 자세한 내용은 힌트를 참조 하세요.
RightTable string ✔️ 행을 병합할 내부 테이블이라고도 하는 올바른 테이블 또는 테이블 형식 식입니다. $right로 표시됩니다.
조건 string ✔️ LeftTable의 행을 RightTable의 행과 일치시킬 방법을 결정합니다. 일치하려는 열의 이름이 두 테이블 모두에 같은 경우 ColumnName 구문을 ON 사용합니다. 그렇지 않으면 LeftColumn RightColumn$right.== 구문을 ON $left.사용합니다. 여러 조건을 지정하려면 "and" 키워드를 사용하거나 쉼표로 구분할 수 있습니다. 쉼표로 사용하는 경우 조건은 "and" 논리 연산자를 사용하여 평가됩니다.

최상의 성능을 위해 한 테이블이 항상 다른 테이블보다 작은 경우 조인의 왼쪽으로 사용합니다.

힌트

매개 변수 이름 설명
hint.remote auto, left, localright 클러스터 간 조인 참조
hint.strategy=broadcast 클러스터 노드에서 쿼리 부하를 공유하는 방법을 지정합니다. 브로드캐스트 조인 참조
hint.shufflekey=<key> 쿼리는 shufflekey 키를 사용하여 데이터를 분할하는 클러스터 노드의 쿼리 부하를 공유합니다. 순서 섞기 쿼리 참조
hint.strategy=shuffle 전략 쿼리는 shuffle 각 노드가 데이터의 한 파티션을 처리하는 클러스터 노드의 쿼리 부하를 공유합니다. 순서 섞기 쿼리 참조

반품

스키마: 일치하는 키를 포함하여 두 테이블의 모든 열입니다.
행: 두 테이블의 행만 일치합니다.

예시

let X = datatable(Key:string, Value1:long)
[
    'a',1,
    'b',2,
    'b',3,
    'k',5,
    'c',4
];
let Y = datatable(Key:string, Value2:long)
[
    'b',10,
    'c',20,
    'c',30,
    'd',40,
    'k',50
];
X | join kind=inner Y on Key

출력

Value1 Key1 Value2
b 3 b 10
b 2 b 10
c 4 c 20
c 4 c 30
k 5 k 50

참고 항목

  • 오른쪽의 (b,10)은 왼쪽의 (b,2) 및 (b,3) 모두와 두 번 조인되었습니다.
  • 왼쪽의 (c,4)는 두 번 조인되었습니다. 오른쪽에는 (c,20) 및 (c,30)가 모두 있습니다.
  • 왼쪽에서 (k,5) 및 오른쪽에서 (k, 50)가 한 번 조인되었습니다.