Aquí hay otro ejemplo usando el operador punto:
Configuración inicial (solo necesita ejecutarse una vez):
create extension cube;
create extension earthdistance;
Y luego la consulta:
select (point(-0.1277,51.5073) <@> point(-74.006,40.7144)) as distance;
distance
------------------
3461.10547602474
(1 row)
Tenga en cuenta que points
se crean con LONGITUD PRIMERO . Según la documentación:
Los puntos se toman como (longitud, latitud) y no al revés porque la longitud está más cerca de la idea intuitiva del eje x y la latitud del eje y.
Lo cual es un diseño terrible... pero así son las cosas.
Su salida estará en millas .
Da la distancia en millas terrestres entre dos puntos en la superficie de la Tierra.