Dela via


ST_INTERSECTS (NoSQL-fråga)

GÄLLER FÖR: NoSQL

Returnerar ett booleskt värde som anger om GeoJSON-objektet (Point, Polygon, MultiPolygon eller LineString) som anges i det första argumentet korsar GeoJSON-objektet i det andra argumentet.

Syntax

ST_INTERSECTS(<spatial_expr_1>, <spatial_expr_2>)  

Argument

beskrivning
spatial_expr_1 Alla giltiga GeoJSON Point-, Polygon-, MultiPolygon - eller LineString-uttryck .
spatial_expr_2 Alla giltiga GeoJSON Point-, Polygon-, MultiPolygon - eller LineString-uttryck .

Returtyper

Returnerar ett booleskt värde.

Exempel

I följande exempel visas hur du hittar om två polygoner korsar varandra.

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
  }
]

Kommentarer

  • Den här funktionen drar nytta av ett geospatialt index förutom i frågor med aggregeringar.
  • GeoJSON-specifikationen kräver att punkter i en Polygon anges i motsols ordning. En Polygon som anges i medsols ordning representerar inversen av regionen inom den.