PostgreSQL
 sql >> Database >  >> RDS >> PostgreSQL

Come trovare la distanza più breve dal punto al poligono?

L'operatore di distanza <-> funziona bene tra punti e poligoni.

Puoi interrogare in questo modo:

SELECT b.*
FROM osm_buildings AS b
ORDER BY b.polygon <-> 'POINT(3.14 2.78)'::geometry
LIMIT 10;

Questo otterrà i 10 edifici più vicini a quel punto.

Quella query può utilizzare un indice sul polygon colonna.