У меня есть таблица (natomr) с 200 записями, которая определяет разные области. Я хочу узнать, какие области, которые содержат произвольную точку. Это мой SQL:ST_DWith делает запрос медленным (> 1000 мс)
SELECT *
FROM natomr
WHERE ST_DWithin(the_geom4326,
ST_geomfromtext('POINT(13.614807 59.684035)', 4326)::geography, 1)
Этот запрос занимает около 1200 мс, что, как я полагаю, слишком длинный для такой маленькой таблицы.
Я создал индекс для the_geom4326, как это:
CREATE INDEX natomr_the_geom4326_gist
ON natomr
USING gist
(the_geom4326);
Я также запустить VACUUM ПОЛНОЙ команды, но это не имеет никакого эффекта.
Что делать, чтобы ускорить запрос?
Это оказалась функция географии, которая замедляла ее. Когда я удалил это заняло 17ms! – luttkens
@ luttkens, так что если вы отбросьте географию? что тогда? Мне нужно сделать? – emerak