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

Left lookup join

対応環境: Streaming

2 つのデータセットを結合し、左側のテーブルからすべての行を保持し、右側のテーブルから一致する行のみを保持します。

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

引数

  • 左側で選択する列の条件 - 左側の入力スキーマ内のすべての列がこの条件と一致するかどうかをテストします。一致する場合、列は出力に選択されます。
    ColumnPredicate
  • 右側で選択する列の条件 - 右側の入力スキーマ内のすべての列がこの条件と一致するかどうかをテストします。一致する場合、列は出力に選択されます。
    ColumnPredicate
  • 結合条件 - 結合する左側と右側の入力からの列のリスト。
    List<Tuple<Column<Boolean | Byte | Date | Double | Float | Integer | Long | Short | String | Timestamp>, Column<Boolean | Byte | Date | Double | Float | Integer | Long | Short | String | Timestamp>>>
  • 左側のデータセット - 結合に使用する左側のデータセット。
    Table
  • 右側のデータセット - 結合に使用する右側のデータセット。
    Table
  • 任意 右側の列に付けるプレフィックス - 右側のすべての列に追加するプレフィックス。
    Literal<String>

例 1: 基本ケース

引数の値:

  • 左側で選択する列の条件:
    columnNameIsIn(
     columnNames: [tail_number, airline],
    )
  • 右側で選択する列の条件:
    columnNameIsIn(
     columnNames: [home_airport],
    )
  • 結合条件: [(tail_number, 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: [home_airport],
    )
  • 結合条件: [(tail_number, tail_number), (factor, 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

例 3: 基本ケース

引数の値:

  • 左側で選択する列の条件:
    allColumns(

    )
  • 右側で選択する列の条件:
    columnNameIsIn(
     columnNames: [home_airport],
    )
  • 結合条件: [(tail_number, 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
XB-123LGW
MT-222CPH
KK-452JFK
JR-201IAD

出力:

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