PostgreSQL рассчитать расстояние между двумя точками без использования PostGIS - PullRequest
1 голос
/ 10 апреля 2020

Как рассчитать расстояние между двумя точками, когда широта и долгота находятся в двух отдельных столбцах таблицы?
Я не могу использовать PostGIS, потому что я использую heroku Postgres бесплатную версию.

1 Ответ

1 голос
/ 10 апреля 2020

Вы можете использовать, что-то вроде этого:

select SQRT(POW(69.1 * (latitude::float -  p_lat::float), 2) + POW(69.1 * (p_lon::float - longitude::float) * COS(latitude::float / 57.3), 2))

В этом:

(широта, долгота) точка 1.

(p_lat, p_lon) точка 2

...