ST_ISVALIDDETAILED (dotaz NoSQL)
PLATÍ PRO: NoSQL
Vrátí hodnotu JSON obsahující logickou hodnotu, pokud je zadaný výraz GeoJSON Point, Polygon nebo LineString platný a pokud je neplatný, důvod.
Syntaxe
ST_ISVALIDDETAILED(<spatial_expr>)
Argumenty
Popis | |
---|---|
spatial_expr |
Libovolný platný výraz GeoJSON Point, Polygon nebo LineString . |
Návratové typy
Vrátí objekt JSON obsahující logickou hodnotu označující, jestli je zadaný bod GeoJSON nebo mnohoúhelník platný. Pokud je neplatný, objekt navíc obsahuje důvod jako řetězcovou hodnotu.
Příklady
Následující příklad, jak zkontrolovat platnost více objektů.
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."
}
}
]
Poznámky
- Specifikace GeoJSON vyžaduje, aby body v polygonu byly zadány v proti směru hodinových ručiček. Mnohoúhelník zadaný v pořadí hodinových ručiček představuje inverzní funkci oblasti v ní.