Чтобы получить 5 ближайших:
SELECT * FROM your_table
ORDER BY ST_Distance(your_table.geom, ST_Geomfromtext(your point as wkt))
limit 5;
Если у вас большой набор данных и вы знаете, что не хотите искать дальше, скажем, 1 км, запрос будет более эффективным, если вы сделаете это.:
SELECT * FROM your_table
WHERE ST_DWithin(your_table.geom, ST_Geomfromtext(your point as wkt, 1000)
ORDER BY ST_Distance(your_table.geom, ST_Geomfromtext(your point as wkt))
limit 5;
/ Никлас