Aracılığıyla paylaş


ST_ISVALID - Cosmos DB'de sorgu dili (Azure ve Doku'da)

İşlev, ST_ISVALID belirtilen GeoJSON Noktası, ÇokGen, MultiPolygon veya LineString ifadesinin geçerli olup olmadığını belirten bir boole değeri döndürür.

İşlev, ST_ISVALID GeoJSON nesnesinin Azure Cosmos DB'de geçerli olup olmadığını gösteren bir boole döndürür.

Sözdizimi

ST_ISVALID(<spatial_expr>)

Arguments

Description
spatial_expr Geçerli herhangi bir GeoJSON Noktası, Çokgen, MultiPolygon veya LineString ifadesi.

Dönüş türleri

Boole değeri döndürür.

Örnekler

Bu bölüm, bu sorgu dili yapısının nasıl kullanılacağına örnekler içerir.

GeoJSON nesnelerinin geçerliliğini denetleme

Bu örnekte işlevi, ST_ISVALID birden çok GeoJSON nesnesinin geçerliliğini denetlemek için kullanılır.

SELECT VALUE {
  valid: ST_ISVALID({ 
      "type": "Point",
      "coordinates": [-84.38876194345323, 33.75682784306348] 
  }),
  invalid: ST_ISVALID({ 
      "type": "Point",
      "coordinates": [133.75682784306348, -184.38876194345323] 
  })
}
[
  {
    "valid": true,
    "invalid": false
  }
]

Açıklamalar

  • GeoJSON belirtimi, çokgen içindeki noktaların saat yönünün tersine belirtilmesi gerekir. Saat yönünde belirtilen çokgen, içindeki bölgenin tersini temsil eder.