Я полагаю, вы переключаете x и y в ваших парах координат. WGS84
ожидает longitude, latitude
, а не наоборот:
SELECT name
FROM planet_osm_polygon
WHERE place = 'city'
AND ST_Contains(ST_Transform(way,4326), ST_SetSRID(ST_MakePoint(44.80,41.69),4326));
С другой стороны: подумайте об уменьшении точности ваших координат. С таким количеством десятичных чисел вы входите в область микроскопии -> 41.693459100461496
Пример данных
CREATE TEMPORARY TABLE planet_osm_polygon (name TEXT, way GEOMETRY,place TEXT);
INSERT INTO planet_osm_polygon
VALUES ('Georgia',ST_SetSRID('POLYGON((43.87 42.22,45.43 42.22,45.43 41.50,43.87 41.50,43.87 42.22))'::GEOMETRY,4289),'city');
Координаты соответствуют следующему BBOX в SRS 4289
:
Запрос - укажите точку внутри BBOX, задав либо BBOX, и указав значение WGS84
SELECT name
FROM planet_osm_polygon
WHERE place = 'city'
AND ST_Contains(ST_Transform(way,4326), ST_SetSRID(ST_MakePoint(44.80,41.69),4326));
name
---------
Georgia
(1 Zeile)