Freigeben über


ST_INTERSECTS - Abfragesprache in Cosmos DB (in Azure und Fabric)

Die ST_INTERSECTS Funktion gibt einen booleschen Wert zurück, der angibt, ob das im ersten Argument angegebene GeoJSON-Objekt das GeoJSON-Objekt im zweiten Argument überschneidet.

Die ST_INTERSECTS Funktion gibt einen booleschen Wert zurück, der angibt, ob zwei GeoJSON-Objekte in Azure Cosmos DB für NoSQL schneiden.

Syntax

ST_INTERSECTS(<spatial_expr_1>, <spatial_expr_2>)

Arguments

Description
spatial_expr_1 Beliebiger gültiger GeoJSON Point-, Polygon-, MultiPolygon- oder LineString-Ausdruck.
spatial_expr_2 Beliebiger gültiger GeoJSON Point-, Polygon-, MultiPolygon- oder LineString-Ausdruck.

Rückgabetypen

Gibt einen booleschen Wert zurück.

Examples

Dieser Abschnitt enthält Beispiele für die Verwendung dieses Abfragesprachenkonstrukts.

Überprüfen, ob sich zwei Polygone schneiden

In diesem Beispiel wird die ST_INTERSECTS Funktion verwendet, um zu bestimmen, ob sich zwei GeoJSON-Polygone schneiden.

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

Bemerkungen

  • Diese Funktion profitiert von einem Geospatialindex mit Ausnahme von Abfragen mit Aggregaten.
  • Die GeoJSON-Spezifikation erfordert, dass Punkte innerhalb eines Polygons in gegen den Uhrzeigersinn angegeben werden. Ein im Uhrzeigersinn angegebenes Polygon stellt die Umkehrung des Bereichs darin dar.