注: 以下の翻訳の正確性は検証されていません。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.leftri.foundry.main.dataset.right出力: | tail_number | airline | | ----- | ----- | | XB-123 | foundry air | | MT-222 | new airline | | XB-123 | foundry airline | | MT-222 | new air | | KK-452 | new air | | XB-123 | foundry 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.leftri.foundry.main.dataset.right出力: | tail_number | airline | factor | | ----- | ----- | ----- | | KK-452 | new air | 1 |

例 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.leftri.foundry.main.dataset.right出力: | tail_number | airline | factor | | ----- | ----- | ----- | | XB-123 | foundry air | 2 | | XB-123 | foundry airline | 2 |

例 4 - ベースケース

引数の値:

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

    )
  • 結合条件:
    equals(
     left: tail_number,
     right: tail_number,
    )
  • 左側のデータセット: ri.foundry.main.dataset.left
  • 右側のデータセット: ri.foundry.main.dataset.right 入力: ri.foundry.main.dataset.leftri.foundry.main.dataset.right出力: | tail_number | airline | miles | factor | | ----- | ----- | ----- | ----- | | XB-123 | foundry air | 124 | 2 | | MT-222 | new airline | 1123 | 5 | | XB-123 | foundry airline | 335 | 5 | | MT-222 | new air | 565 | 4 | | KK-452 | new air | 222 | 1 | | XB-123 | foundry airline | 1134 | 2 |