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

左結合

対応している処理:バッチ

左と右のデータセット入力を結合します 変換カテゴリ:結合

宣言された引数

  • 左側で選択する行の条件 - 左側の入力スキーマ内のすべての行は、この条件に一致するかどうかをテストされます。一致する場合、行は出力で選択されます。
    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.leftri.foundry.main.dataset.right出力: | tail_number | airline | home_airport | | ----- | ----- | ----- | | XB-123 | foundry air | LHR | | MT-222 | new airline | CPH | | XB-123 | foundry airline | LHR | | MT-222 | new air | CPH | | KK-452 | new air | JFK | | PA-452 | new air | null | | XB-123 | foundry airline | LHR |

例 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.leftri.foundry.main.dataset.right出力: | tail_number | airline | factor | right_tail_number | right_home_airport | right_factor | | ----- | ----- | ----- | ----- | ----- | ----- | | XB-123 | foundry air | 2 | KK-452 | JFK | 10 | | XB-123 | foundry air | 2 | JR-201 | IAD | 4 | | MT-222 | new airline | 5 | KK-452 | JFK | 10 | | XB-123 | foundry airline | 5 | KK-452 | JFK | 10 | | MT-222 | new air | 4 | KK-452 | JFK | 10 | | KK-452 | new air | 1 | XB-123 | LHR | 2 | | KK-452 | new air | 1 | KK-452 | JFK | 10 | | KK-452 | new air | 1 | JR-201 | IAD | 4 | | PA-452 | new air | 2 | KK-452 | JFK | 10 | | PA-452 | new air | 2 | JR-201 | IAD | 4 | | XB-123 | foundry airline | 2 | KK-452 | JFK | 10 | | XB-123 | foundry airline | 2 | JR-201 | IAD | 4 |

例 3 - 基本ケース

引数の値:

  • 左側で選択する行の条件:
    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.leftri.foundry.main.dataset.right出力: | tail_number | airline | factor | home_airport | | ----- | ----- | ----- | ----- | | XB-123 | foundry air | 2 | LHR | | MT-222 | new airline | 5 | null | | XB-123 | foundry airline | 5 | null | | MT-222 | new air | 4 | null | | KK-452 | new air | 1 | null | | PA-452 | new air | 2 | null | | XB-123 | foundry airline | 2 | LHR |

例 4 - 基本ケース

引数の値:

  • 左側で選択する行の条件:
    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.leftri.foundry.main.dataset.right出力: | tail_number | airline | miles | factor | home_airport | | ----- | ----- | ----- | ----- | ----- | | XB-123 | foundry air | 124 | 2 | LHR | | MT-222 | new airline | 1123 | 5 | CPH | | XB-123 | foundry airline | 335 | 5 | LHR | | MT-222 | new air | 565 | 4 | CPH | | KK-452 | new air | 222 | 1 | JFK | | PA-452 | new air | 212 | 2 | null | | XB-123 | foundry airline | 1134 | 2 | LHR |