ST_ISVALIDDETAILED (zapytanie NoSQL)
DOTYCZY: NoSQL
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.
Składnia
ST_ISVALIDDETAILED(<spatial_expr>)
Argumenty
Opis | |
---|---|
spatial_expr |
Dowolne prawidłowe wyrażenie GeoJSON Point, Polygon 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
W poniższym przykładzie przedstawiono sposób sprawdzania poprawności wielu obiektów.
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 określenia punktów w obrębie wielokąta w kolejności licznika zegara. Wielokąt określony w kolejności zgodnie z ruchem wskazówek zegara reprezentuje odwrotność regionu w nim.