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

セミジョイン

サポート対象: バッチ

セミジョインは左と右のデータセットを結合します。これにより、結合条件に一致しないすべての行が削除されます。

トランスフォームカテゴリ: ジョイン

引数

  • 左側で選択する列の条件 - 左側の入力スキーマのすべての列がこの条件に一致するかテストされます。一致した場合、その列は出力に選択されます。
    ColumnPredicate
  • ジョイン条件 - ジョインに使用する条件。
    Expression<Boolean>
  • 左データセット - ジョインに使用する左データセット。
    Table
  • 右データセット - ジョインに使用する右データセット。
    Table

例 1: 基本ケース

引数の値:

  • 左側で選択する列の条件:
    columnNameIsIn(
     columnNames: [tail_number, airline],
    )
  • ジョイン条件:
    equals(
     left: tail_number,
     right: tail_number,
    )
  • 左データセット: ri.foundry.main.dataset.left
  • 右データセット: ri.foundry.main.dataset.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_airport
XB-123LHR
MT-222CPH
KK-452JFK
JR-201IAD

出力:

tail_numberairline
XB-123foundry air
MT-222new airline
XB-123foundry airline
MT-222new air
KK-452new air
XB-123foundry airline

例 2: 基本ケース

説明: シンプルな複合ジョイン条件。 引数の値:

  • 左側で選択する列の条件:
    columnNameIsIn(
     columnNames: [tail_number, airline, factor],
    )
  • ジョイン条件:
    and(
     conditions: [
    lessThan(
     left: factor,
     right: factor,
    ),
    equals(
     left: tail_number,
     right: tail_number,
    )],
    )
  • 左データセット: ri.foundry.main.dataset.left
  • 右データセット: ri.foundry.main.dataset.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_numberairlinefactor
KK-452new air1

例 3: 基本ケース

引数の値:

  • 左側で選択する列の条件:
    columnNameIsIn(
     columnNames: [tail_number, airline, factor],
    )
  • ジョイン条件:
    and(
     conditions: [
    equals(
     left: tail_number,
     right: tail_number,
    ),
    equals(
     left: factor,
     right: factor,
    )],
    )
  • 左データセット: ri.foundry.main.dataset.left
  • 右データセット: ri.foundry.main.dataset.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_numberairlinefactor
XB-123foundry air2
XB-123foundry airline2

例 4: 基本ケース

引数の値:

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

    )
  • ジョイン条件:
    equals(
     left: tail_number,
     right: tail_number,
    )
  • 左データセット: ri.foundry.main.dataset.left
  • 右データセット: ri.foundry.main.dataset.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_airport
XB-123LHR
MT-222CPH
KK-452JFK
JR-201IAD

出力:

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