От края на септември 2011 г. PostGIS поддържа индексирани заявки за най-близки съседи чрез специален(и) оператор(и), използваем(и) в клаузата ORDER BY:
SELECT name, gid
FROM geonames
ORDER BY geom <-> st_setsrid(st_makepoint(-90,40),4326)
LIMIT 10;
...ще върне 10-те обекта, чийто geom
е най-близкият -90,40
по мащабируем начин. Още няколко подробности (опции и предупреждения) са в тази публикация за обявление и използването на операторите <-> и <#> също вече е документирано в официалния справочник на PostGIS 2.0. (Основната разлика между двете е, че <->
сравнява центроидите на формата и <#>
сравнява границите им – няма разлика за точките, други форми избират това, което е подходящо за вашите заявки.)