Nuta
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować się zalogować lub zmienić katalog.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Funkcja ST_ISVALIDDETAILED zwraca wartość JSON zawierającą wartość logiczną, jeśli określone wyrażenie GeoJSON Point, Polygon lub LineString jest prawidłowe, a jeśli jest nieprawidłowe, przyczyna.
Funkcja ST_ISVALIDDETAILED zwraca obiekt JSON wskazujący, czy obiekt GeoJSON jest prawidłowy i, jeśli nie, przyczyną w usłudze Azure Cosmos DB dla NoSQL.
Składnia
ST_ISVALIDDETAILED(<spatial_expr>)
Arguments
| Description | |
|---|---|
spatial_expr |
Dowolne prawidłowe wyrażenie GeoJSON, Wielokąt lub LineString. |
Typy zwracane
Zwraca obiekt JSON zawierający wartość logiczną wskazującą, czy określony punkt GeoJSON lub wyrażenie wielokątne jest prawidłowe. Jeśli jest on nieprawidłowy, obiekt dodatkowo zawiera przyczynę jako wartość ciągu.
Przykłady
Ta sekcja zawiera przykłady użycia tej konstrukcji języka zapytań.
Sprawdzanie poprawności obiektów GeoJSON
W tym przykładzie ST_ISVALIDDETAILED funkcja służy do sprawdzania poprawności wielu obiektów GeoJSON.
SELECT VALUE {
valid: ST_ISVALIDDETAILED({
"type": "Point",
"coordinates": [-84.38876194345323, 33.75682784306348]
}),
invalid: ST_ISVALIDDETAILED({
"type": "Point",
"coordinates": [133.75682784306348, -184.38876194345323]
})
}
[
{
"valid": {
"valid": true
},
"invalid": {
"valid": false,
"reason": "Latitude values must be between -90 and 90 degrees."
}
}
]
Uwagi
- Specyfikacja GeoJSON wymaga, aby punkty w obrębie wielokąta zostały określone w kolejności odwrotnej do ruchu wskazówek zegara. Wielokąt określony w kolejności wskazówek zegara reprezentuje odwrotność regionu w nim.