ST_INTERSECTS (NoSQL クエリ)

適用対象: NoSQL

最初の引数で指定された GeoJSON オブジェクト (PointPolygonMultiPolygon、または LineString) が 2 つ目の引数の GeoJSON オブジェクトと交差するかどうかを示すブール式を返します。

構文

ST_INTERSECTS(<spatial_expr_1>, <spatial_expr_2>)  

引数

説明
spatial_expr_1 有効な GeoJSON PointPolygonMultiPolygon、または LineString 式です。
spatial_expr_2 有効な GeoJSON PointPolygonMultiPolygon、または LineString 式です。

戻り値の型

ブール値を返します。

次の例は、2 つの多角形が交差しているかどうかを調べる方法を示しています。

SELECT VALUE {
    highWayAndCampusIntersect: ST_INTERSECTS({
        "type": "Polygon",
        "coordinates": [ [
            [
              -122.13693695285855,
              47.64996065621003
            ],
            [
              -122.1351662656516,
              47.64627863318731
            ],
            [
              -122.13488295569863,
              47.646326350048696
            ],
            [
              -122.1366182291613,
              47.650016321952904
            ],
            [
              -122.13693695285855,
              47.64996065621003
            ]
        ] ]
    }, {  
        "type": "Polygon",
        "coordinates": [ [
            [
              -122.14034847687708,
              47.6494835188378
            ],
            [
              -122.14014779899375,
              47.64625477474044
            ],
            [
              -122.13256925774829,
              47.646207057813655
            ],
            [
              -122.13254564858545,
              47.64941990019193
            ],
            [
              -122.14034847687708,
              47.6494835188378
            ]
        ] ]
    })
}
[
  {
      "highWayAndCampusIntersect": true
  }
]

注釈

  • この関数は、集計を使用したクエリを除き、地理空間インデックスの恩恵を受けます。
  • GeoJSON 仕様では、Polygon 内のポイントを反時計回りの順序で指定する必要があります。 時計回りに指定された Polygon は、その中の領域を逆にしたものを表します。