Поделиться через


ST_ISVALID — язык запросов в Cosmos DB (в Azure и Fabric)

Функция ST_ISVALID возвращает логическое значение, указывающее, является ли допустимое выражение GeoJSON Point, Polygon, MultiPolygon или LineString.

Функция ST_ISVALID возвращает логическое значение, указывающее, является ли объект GeoJSON допустимым в Azure Cosmos DB для NoSQL.

Синтаксис

ST_ISVALID(<spatial_expr>)

Arguments

Description
spatial_expr Любое допустимое выражение GeoJSON Point, Polygon, MultiPolygon или LineString.

Типы возвращаемых данных

Возвращает логическое значение.

Примеры

В этом разделе содержатся примеры использования этой конструкции языка запросов.

Проверка допустимости объектов GeoJSON

В этом примере ST_ISVALID функция используется для проверки допустимости нескольких объектов GeoJSON.

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

Замечания

  • Спецификация GeoJSON требует, чтобы точки в многоугольнике были указаны в порядке по часовой стрелке. Многоугольник, указанный в по часовой стрелке, представляет обратное значение региона внутри него.