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

Geo intersection left join

サポート対象: バッチ

入力データセットを入力ジオメトリが重なるかどうかで左結合します。結果には接触するジオメトリも含まれます。

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

引数

  • 左側で選択する列の条件 - 左側の入力スキーマ内のすべての列がこの条件に一致するかテストされます。一致する場合、列は出力に選択されます。
    ColumnPredicate
  • 右側で選択する列の条件 - 右側の入力スキーマ内のすべての列がこの条件に一致するかテストされます。一致する場合、列は出力に選択されます。
    ColumnPredicate
  • 結合キー - 結合に使用する左側と右側のGeoJSON列。
    Tuple<Column<Geometry>, Column<Geometry>>
  • 左側データセット - 結合に使用する左側のデータセット。
    Table
  • 右側データセット - 結合に使用する右側のデータセット。
    Table
  • オプション 右側の列に対するプレフィックス - 右側のすべての列に追加するプレフィックス。
    Literal<String>

例 1: 基本ケース

引数の値:

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

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

    )
  • 結合キー: (geometryColLhs, geometryColRhs)
  • 左側データセット: ri.foundry.main.dataset.left
  • 右側データセット: ri.foundry.main.dataset.right
  • 右側の列に対するプレフィックス: null

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

geometryColLhscol1Lhs
{"coordinates": [[[0.0, 0.0], [10.0, 0.0], [10.0, 10.0], [0.0, 10.0], [0.0, 0.0]]], "type": "Polygon"}42.0
{"coordinates": [55.0, 5.0], "type":"Point"}43.0

ri.foundry.main.dataset.right

geometryColRhscol1Rhs
{"coordinates": [[[2.0, 2.0], [7.0, 2.0], [7.0, 7.0], [2.0, 7.0], [2.0, 2.0]]], "type": "Polygon"}rhsVal1
{"coordinates": [[[12.0, 12.0], [17.0, 12.0], [17.0, 17.0], [12.0, 17.0], [12.0, 12.0]]], "type": "Polygon"}rhsVal2
{"coordinates": [0.0, 0.0], "type":"Point"}rhsVal3
{"coordinates": [15.0, 15.0], "type":"Point"}rhsVal4
{"coordinates": [[-1.0, -1.0], [5.0, 5.0]], "type":"LineString"}rhsVal5
{"coordinates": [[20.0, 20.0], [21.0, 23.0]], "type":"LineString"}rhsVal6
{"coordinates": [[-1.0, -1.0], [5.0, 5.0]], "type":"LineString"}rhsVal7
{"coordinates": [[20.0, 20.0], [21.0, 23.0]], "type":"LineString"}rhsVal8
{"coordinates": [[[[2.0, 2.0], [7.0, 2.0], [7.0, 7.0], [2.0, 7.0], [2.0, 2.0]]], [[[12.0, 12.0], [17.0, 12.0], [17.0, 17.0], [12.0, 17.0], [12.0, 12.0]]]], "type":"MultiPolygon"}rhsVal9
{"coordinates": [[[[170.0, 170.0], [190.0, 170.0], [190.0, 190.0], [170.0, 190.0], [170.0, 170.0]]], [[[12.0, 12.0], [17.0, 12.0], [17.0, 17.0], [12.0, 17.0], [12.0, 12.0]]]], "type":"MultiPolygon"}rhsVal10

出力:

geometryColLhscol1LhsgeometryColRhscol1Rhs
{"coordinates": [[[0.0, 0.0], [10.0, 0.0], [10.0, 10.0], [0.0, 10.0], [0.0, 0.0]]], "type": "Polygon"}42.0{"coordinates": [[[2.0, 2.0], [7.0, 2.0], [7.0, 7.0], [2.0, 7.0], [2.0, 2.0]]], "type": "Polygon"}rhsVal1
{"coordinates": [[[0.0, 0.0], [10.0, 0.0], [10.0, 10.0], [0.0, 10.0], [0.0, 0.0]]], "type": "Polygon"}42.0{"coordinates": [0.0, 0.0], "type":"Point"}rhsVal3
{"coordinates": [[[0.0, 0.0], [10.0, 0.0], [10.0, 10.0], [0.0, 10.0], [0.0, 0.0]]], "type": "Polygon"}42.0{"coordinates": [[-1.0, -1.0], [5.0, 5.0]], "type":"LineString"}rhsVal5
{"coordinates": [[[0.0, 0.0], [10.0, 0.0], [10.0, 10.0], [0.0, 10.0], [0.0, 0.0]]], "type": "Polygon"}42.0{"coordinates": [[-1.0, -1.0], [5.0, 5.0]], "type":"LineString"}rhsVal7
{"coordinates": [[[0.0, 0.0], [10.0, 0.0], [10.0, 10.0], [0.0, 10.0], [0.0, 0.0]]], "type": "Polygon"}42.0{"coordinates": [[[[2.0, 2.0], [7.0, 2.0], [7.0, 7.0], [2.0, 7.0], [2.0, 2.0]]], [[[12.0, 12.0], [17.0, 12.0], [17.0, 17.0], [12.0, 17.0], [12.0, 12.0]]]], "type":"MultiPolygon"}rhsVal9
{"coordinates": [55.0, 5.0], "type":"Point"}43.0nullnull

例 2: 基本ケース

引数の値:

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

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

    )
  • 結合キー: (geometryColLhs, geometryColRhs)
  • 左側データセット: ri.foundry.main.dataset.left
  • 右側データセット: ri.foundry.main.dataset.right
  • 右側の列に対するプレフィックス: null

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

geometryColLhslhs1
{}42.0
{"coordinates": [[[0.0, 0.0], [10.0, 0.0], [10.0, 10.0], [0.0, 10.0], [0.0, 0.0]]], "type": "Polygon"}43.0

ri.foundry.main.dataset.right

geometryColRhsrhs1
{"coordinates": [[[2.0, 2.0], [7.0, 2.0], [7.0, 7.0], [2.0, 7.0], [2.0, 2.0]]], "type": "Polygon"}rhsVal1

出力:

geometryColLhslhs1geometryColRhsrhs1
{"coordinates": [[[0.0, 0.0], [10.0, 0.0], [10.0, 10.0], [0.0, 10.0], [0.0, 0.0]]], "type": "Polygon"}43.0{"coordinates": [[[2.0, 2.0], [7.0, 2.0], [7.0, 7.0], [2.0, 7.0], [2.0, 2.0]]], "type": "Polygon"}rhsVal1
{}42.0nullnull

例 3: Nullケース

引数の値:

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

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

    )
  • 結合キー: (geometryColLhs, geometryColRhs)
  • 左側データセット: ri.foundry.main.dataset.left
  • 右側データセット: ri.foundry.main.dataset.right
  • 右側の列に対するプレフィックス: null

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

geometryColLhslhs1
null42.0
{"coordinates": [[[0.0, 0.0], [10.0, 0.0], [10.0, 10.0], [0.0, 10.0], [0.0, 0.0]]], "type": "Polygon"}43.0

ri.foundry.main.dataset.right

geometryColRhsrhs1
{"coordinates": [[[2.0, 2.0], [7.0, 2.0], [7.0, 7.0], [2.0, 7.0], [2.0, 2.0]]], "type": "Polygon"}rhsVal1

出力:

geometryColLhslhs1geometryColRhsrhs1
{"coordinates": [[[0.0, 0.0], [10.0, 0.0], [10.0, 10.0], [0.0, 10.0], [0.0, 0.0]]], "type": "Polygon"}43.0{"coordinates": [[[2.0, 2.0], [7.0, 2.0], [7.0, 7.0], [2.0, 7.0], [2.0, 2.0]]], "type": "Polygon"}rhsVal1
null42.0nullnull