Как в posgis найти все записи, где геокоордината содержится в рамках указанного полигона?
Добавлено: 2017.01.04, 08:12
Добрый день,
Мне нужно достать объекты, которые находятся в области экрана на карте.
Крайние координаты углов известны. В базе координата объекта ( поле gis_centroid ) имеет тип geography
Пробовал 2-мя вариантами:
Ловлю:
Ловлю:
ERROR: function st_geometryfromtext(geography) does not exist
Не понял - зачем преобразовывать тип точки, если на вход - нет данных. Просто нужно найти все объекты в полигоне.
Помогите пожалуйста с запросом.
Мне нужно достать объекты, которые находятся в области экрана на карте.
Крайние координаты углов известны. В базе координата объекта ( поле gis_centroid ) имеет тип geography
Пробовал 2-мя вариантами:
Код: Выделить всё
select *
FROM m_waypoints
where
ST_Within(
gis_centroid,
ST_GeometryFromText(
'POLYGON((43.284500434723 76.93922996521, 43.293825032866 76.93922996521, 43.293825032866 76.965687274933, 43.284500434723 76.965687274933, 43.284500434723 76.93922996521))', 4326
)
)
Ловлю:
Код: Выделить всё
ERROR: function st_within(geography, geometry) does not exist
Код: Выделить всё
select *
FROM m_waypoints
where
ST_Within(
ST_GeometryFromText(gis_centroid),
ST_GeometryFromText(
'POLYGON((43.284500434723 76.93922996521, 43.293825032866 76.93922996521, 43.293825032866 76.965687274933, 43.284500434723 76.965687274933, 43.284500434723 76.93922996521))', 4326
)
)
Ловлю:
ERROR: function st_geometryfromtext(geography) does not exist
Не понял - зачем преобразовывать тип точки, если на вход - нет данных. Просто нужно найти все объекты в полигоне.
Помогите пожалуйста с запросом.