データ接続と統合Pipeline Builder Transforms左結合

注: 以下の翻訳の正確性は検証されていません。AIPを利用して英語版の原文から機械的に翻訳されたものです。

Left join

対応可能: Batch

2 つのデータセットを結合し、左テーブルのすべての行と、右テーブルから指定された条件を満たす行のみを保持します。

トランスフォームカテゴリ: Join

引数

  • 左側の列を選択するための条件 - 左側の入力スキーマ内のすべての列がこの条件に一致するかどうかをテストします。一致する場合、その列は出力に選択されます。
    ColumnPredicate
  • 右側の列を選択するための条件 - 右側の入力スキーマ内のすべての列がこの条件に一致するかどうかをテストします。一致する場合、その列は出力に選択されます。
    ColumnPredicate
  • 結合条件 - 結合のための条件。
    Expression<Boolean>
  • 左側データセット - 結合に使用する左側のデータセット。
    Table
  • 右側データセット - 結合に使用する右側のデータセット。
    Table
  • オプション 右側の列に追加する接頭辞 - 右側のすべての列に追加する接頭辞。
    Literal<String>

例 1: 基本ケース

引数の値:

  • 左側の列を選択するための条件:
    columnNameIsIn(
     columnNames: [tail_number, airline],
    )
  • 右側の列を選択するための条件:
    columnNameIsIn(
     columnNames: [home_airport],
    )
  • 結合条件:
    equals(
     left: tail_number,
     right: tail_number,
    )
  • 左側データセット: ri.foundry.main.dataset.left
  • 右側データセット: ri.foundry.main.dataset.right
  • 右側の列に追加する接頭辞: null

入力: ri.foundry.main.dataset.left

tail_numberairlinemilesfactor
XB-123foundry air1242
MT-222new airline11235
XB-123foundry airline3355
MT-222new air5654
KK-452new air2221
PA-452new air2122
XB-123foundry airline11342

ri.foundry.main.dataset.right

tail_numberhome_airport
XB-123LHR
MT-222CPH
KK-452JFK
JR-201IAD

出力:

tail_numberairlinehome_airport
XB-123foundry airLHR
MT-222new airlineCPH
XB-123foundry airlineLHR
MT-222new airCPH
KK-452new airJFK
PA-452new airnull
XB-123foundry airlineLHR

例 2: 基本ケース

説明: 単純な複合結合条件。 引数の値:

  • 左側の列を選択するための条件:
    columnNameIsIn(
     columnNames: [tail_number, airline, factor],
    )
  • 右側の列を選択するための条件:
    columnNameIsIn(
     columnNames: [tail_number, home_airport, factor],
    )
  • 結合条件:
    lessThan(
     left: factor,
     right: factor,
    )
  • 左側データセット: ri.foundry.main.dataset.left
  • 右側データセット: ri.foundry.main.dataset.right
  • 右側の列に追加する接頭辞: right_

入力: ri.foundry.main.dataset.left

tail_numberairlinemilesfactor
XB-123foundry air1242
MT-222new airline11235
XB-123foundry airline3355
MT-222new air5654
KK-452new air2221
PA-452new air2122
XB-123foundry airline11342

ri.foundry.main.dataset.right

tail_numberhome_airportfactor
XB-123LHR2
MT-222CPH1
KK-452JFK10
JR-201IAD4

出力:

tail_numberairlinefactorright_tail_numberright_home_airportright_factor
XB-123foundry air2KK-452JFK10
XB-123foundry air2JR-201IAD4
MT-222new airline5KK-452JFK10
XB-123foundry airline5KK-452JFK10
MT-222new air4KK-452JFK10
KK-452new air1XB-123LHR2
KK-452new air1KK-452JFK10
KK-452new air1JR-201IAD4
PA-452new air2KK-452JFK10
PA-452new air2JR-201IAD4
XB-123foundry airline2KK-452JFK10
XB-123foundry airline2JR-201IAD4

例 3: 基本ケース

説明: null 結合条件で結合する場合、行は結合されません。 引数の値:

  • 左側の列を選択するための条件:
    columnNameIsIn(
     columnNames: [tail_number, airline],
    )
  • 右側の列を選択するための条件:
    columnNameIsIn(
     columnNames: [home_airport],
    )
  • 結合条件:
    equals(
     left: tail_number,
     right: tail_number,
    )
  • 左側データセット: ri.foundry.main.dataset.left
  • 右側データセット: ri.foundry.main.dataset.right
  • 右側の列に追加する接頭辞: null

入力: ri.foundry.main.dataset.left

tail_numberairlinemilesfactor
XB-123foundry air1242
nullnew airline11235

ri.foundry.main.dataset.right

tail_numberhome_airport
XB-123LHR
nullCPH

出力:

tail_numberairlinehome_airport
XB-123foundry airLHR
nullnew airlinenull

例 4: 基本ケース

引数の値:

  • 左側の列を選択するための条件:
    columnNameIsIn(
     columnNames: [tail_number, airline, factor],
    )
  • 右側の列を選択するための条件:
    columnNameIsIn(
     columnNames: [home_airport],
    )
  • 結合条件:
    and(
     conditions: [
    equals(
     left: tail_number,
     right: tail_number,
    ),
    equals(
     left: factor,
     right: factor,
    )],
    )
  • 左側データセット: ri.foundry.main.dataset.left
  • 右側データセット: ri.foundry.main.dataset.right
  • 右側の列に追加する接頭辞: null

入力: ri.foundry.main.dataset.left

tail_numberairlinemilesfactor
XB-123foundry air1242
MT-222new airline11235
XB-123foundry airline3355
MT-222new air5654
KK-452new air2221
PA-452new air2122
XB-123foundry airline11342

ri.foundry.main.dataset.right

tail_numberhome_airportfactor
XB-123LHR2
MT-222CPH1
KK-452JFK10
JR-201IAD4

出力:

tail_numberairlinefactorhome_airport
XB-123foundry air2LHR
MT-222new airline5null
XB-123foundry airline5null
MT-222new air4null
KK-452new air1null
PA-452new air2null
XB-123foundry airline2LHR

例 5: 基本ケース

引数の値:

  • 左側の列を選択するための条件:
    allColumns(

    )
  • 右側の列を選択するための条件:
    columnNameIsIn(
     columnNames: [home_airport],
    )
  • 結合条件:
    equals(
     left: tail_number,
     right: tail_number,
    )
  • 左側データセット: ri.foundry.main.dataset.left
  • 右側データセット: ri.foundry.main.dataset.right
  • 右側の列に追加する接頭辞: null

入力: ri.foundry.main.dataset.left

tail_numberairlinemilesfactor
XB-123foundry air1242
MT-222new airline11235
XB-123foundry airline3355
MT-222new air5654
KK-452new air2221
PA-452new air2122
XB-123foundry airline11342

ri.foundry.main.dataset.right

tail_numberhome_airport
XB-123LHR
MT-222CPH
KK-452JFK
JR-201IAD

出力:

tail_numberairlinemilesfactorhome_airport
XB-123foundry air1242LHR
MT-222new airline11235CPH
XB-123foundry airline3355LHR
MT-222new air5654CPH
KK-452new air2221JFK
PA-452new air2122null
XB-123foundry airline11342LHR