Языки пространственных запросов
Для работы с пространственными данными используются разные языки запросов. Они могут быть основаны на SQL, CQL, GeoJSON или SPARQL.
SQL (Structured Query Language) — стандартный язык запросов для реляционных СУБД. В него включены расширения, которые позволяют оперировать с пространственными данными. Некоторые из них:
Расширения для PostgreSQL (например, PostGIS) — работают с двумя типами координат: GEOMETRY (для «плоских» вычислений) и GEOGRAPHY (для сферических вычислений). В PostGIS более сотни функций для работы с геоданными.
Базовые функции для MySQL — например, ST_GeomFromText (конвертирует текстовое описание геометрии в объект GEOMETRY), ST_Contains (проверяет, содержится ли один объект в другом), ST_Distance (вычисляет расстояние между двумя объектами в плоской системе координат).
Модуль Oracle Spatial — поддерживает объекты типа Point, LineString, Polygon, а также мультиобъекты (например, MultiPolygon). В Oracle Spatial есть функции для проверки пересечений SDO_RELATE, нахождения расстояний SDO_WITHIN_DISTANCE, построения буферов SDO_BUFFER и других операций.