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

ジオ距離内部結合

バッチでサポートされています

入力ジオメトリ間の距離に基づいて、左側と右側のデータセットを内部結合します。結合前に、ジオメトリを指定された投影座標参照系に内部変換し、WGS84に戻します。 変換カテゴリ:地理空間、結合

宣言された引数

  • 左側で選択する行の条件 - 左側の入力スキーマ内のすべての行がこの条件と一致するかどうかテストされます。一致する場合、その行は出力で選択されます。
    ColumnPredicate
  • 右側で選択する行の条件 - 右側の入力スキーマ内のすべての行がこの条件と一致するかどうかテストされます。一致する場合、その行は出力で選択されます。
    ColumnPredicate
  • 距離 - 座標参照系と同じ単位で、ジオメトリを結合する距離。
    Literal<DefiniteNumeric>
  • 結合キー - 左側と右側の入力からジオメトリ行に結合する。
    Tuple<Column<Geometry>, Column<Geometry>>
  • 左側のデータセット - 結合で使用する左側のデータセット。
    Table
  • 投影座標系 - 入力ジオメトリは、結合前にこの座標系に変換され、指定された座標系の単位で距離が測定されます。 "authority"としてフォーマットされているので、例えばUTMゾーン18NはEPSG:32618で識別できます。
    Literal<String>
  • 右側のデータセット - 結合で使用する右側のデータセット。
    Table
  • オプション 右側からの行のプレフィックス - 右側のすべての行に追加するプレフィックス。
    Literal<String>

例 1 - ベースケース

引数の値:

  • 左側で選択する行の条件:
    columnNameIsIn(
     columnNames: [geometryColLhs, lhs-1],
    )
  • 右側で選択する行の条件:
    columnNameIsIn(
     columnNames: [geometryCol, arrayCol],
    )
  • 距離: 10.0
  • 結合キー: (geometryColLhs, geometryCol)
  • 左側のデータセット: ri.foundry.main.dataset.left
  • 投影座標系: EPSG:4326
  • 右側のデータセット: ri.foundry.main.dataset.right
  • 右側からの行のプレフィックス: rhs_ 入力: ri.foundry.main.dataset.leftri.foundry.main.dataset.right出力: | geometryColLhs | lhs-1 | rhs_geometryCol | rhs_arrayCol | | ----- | ----- | ----- | ----- | | {"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": [[[20.0, 10.0], [27.0, 10.0], [27.0, 17.0], [20.0, 17.0], [20.0, 10.0]]], "type": "Polygon"} | [ 0.0, 1.0 ] | | {"coordinates": [[25.0, 0.0], [0.0, 25.0]], "type":"LineString"} | 44.0 | {"coordinates": [[[20.0, 10.0], [27.0, 10.0], [27.0, 17.0], [20.0, 17.0], [20.0, 10.0]]], "type": "Polygon"} | [ 0.0, 1.0 ] |

例 2 - ベースケース

引数の値:

  • 左側で選択する行の条件:
    columnNameIsIn(
     columnNames: [geometryColLhs, lhs-1],
    )
  • 右側で選択する行の条件:
    columnNameIsIn(
     columnNames: [geometryColRhs, rhs-1],
    )
  • 距離: 1641
  • 結合キー: (geometryColLhs, geometryColRhs)
  • 左側のデータセット: ri.foundry.main.dataset.left
  • 投影座標系: epsg:2868
  • 右側のデータセット: ri.foundry.main.dataset.right
  • 右側からの行のプレフィックス: null 入力: ri.foundry.main.dataset.leftri.foundry.main.dataset.right出力: | geometryColLhs | lhs-1 | geometryColRhs | rhs-1 | | ----- | ----- | ----- | ----- | | {"coordinates": [-112.14843750000001,33.440609443703586], "type":"Point"} | 42.0 | {"coordinates": [-112.14560508728029,33.44082430962016], "type":"Point"} | rhsVal1 |

例 3 - ベースケース

引数の値:

  • 左側で選択する行の条件:
    columnNameIsIn(
     columnNames: [geometryColLhs, lhs-1],
    )
  • 右側で選択する行の条件:
    columnNameIsIn(
     columnNames: [geometryColRhs, rhs-1],
    )
  • 距離: 1641
  • 結合キー: (geometryColLhs, geometryColRhs)
  • 左側のデータセット: ri.foundry.main.dataset.left
  • 投影座標系: epsg:2868
  • 右側のデータセット: ri.foundry.main.dataset.right
  • 右側からの行のプレフィックス: null 入力: ri.foundry.main.dataset.leftri.foundry.main.dataset.right出力: | geometryColLhs | lhs-1 | geometryColRhs | rhs-1 | | ----- | ----- | ----- | ----- | | {"coordinates": [-112.14843750000001,33.440609443703586], "type":"Point"} | 42.0 | {"coordinates": [-112.14560508728029,33.44082430962016], "type":"Point"} | rhsVal1 |

例 4 - ベースケース

引数の値:

  • 左側で選択する行の条件:
    columnNameIsIn(
     columnNames: [geometryColLhs, lhs-1],
    )
  • 右側で選択する行の条件:
    columnNameIsIn(
     columnNames: [],
    )
  • 距離: 10.0
  • 結合キー: (geometryColLhs, geometryCol)
  • 左側のデータセット: ri.foundry.main.dataset.left
  • 投影座標系: EPSG:4326
  • 右側のデータセット: ri.foundry.main.dataset.right
  • 右側からの行のプレフィックス: rhs_ 入力: ri.foundry.main.dataset.leftri.foundry.main.dataset.right出力: | geometryColLhs | lhs-1 | | ----- | ----- | | {"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 |

例 5 - ベースケース

引数の値:

  • 左側で選択する行の条件:
    columnNameIsIn(
     columnNames: [],
    )
  • 右側で選択する行の条件:
    columnNameIsIn(
     columnNames: [geometryCol, arrayCol],
    )
  • 距離: 10.0
  • 結合キー: (geometryColLhs, geometryCol)
  • 左側のデータセット: ri.foundry.main.dataset.left
  • 投影座標系: EPSG:4326
  • 右側のデータセット: ri.foundry.main.dataset.right
  • 右側からの行のプレフィックス: rhs_ 入力: ri.foundry.main.dataset.leftri.foundry.main.dataset.right出力: | rhs_geometryCol | rhs_arrayCol | | ----- | ----- | | {"coordinates": [[[20.0, 10.0], [27.0, 10.0], [27.0, 17.0], [20.0, 17.0], [20.0, 10.0]]], "type": "Polygon"} | [ 0.0, 1.0 ] |

例 6 - ヌルケース

引数の値:

  • 左側で選択する行の条件:
    columnNameIsIn(
     columnNames: [geometryColLhs, lhs-1],
    )
  • 右側で選択する行の条件:
    columnNameIsIn(
     columnNames: [geometryCol, col1, arrayCol],
    )
  • 距離: 10.0
  • 結合キー: (geometryColLhs, geometryCol)
  • 左側のデータセット: ri.foundry.main.dataset.left
  • 投影座標系: EPSG:4326
  • 右側のデータセット: ri.foundry.main.dataset.right
  • 右側からの行のプレフィックス: rhs_ 入力: ri.foundry.main.dataset.leftri.foundry.main.dataset.right出力: | geometryColLhs | lhs-1 | rhs_geometryCol | rhs_col1 | rhs_arrayCol | | ----- | ----- | ----- | ----- | ----- | | {"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": [[[20.0, 10.0], [27.0, 10.0], [27.0, 17.0], [20.0, 17.0], [20.0, 10.0]]], "type": "Polygon"} | rhsVal1 | [ 0.0, 1.0 ] |