Примечание: Этот вопрос был опубликован в Stackoverflow на первом .
У меня есть таблица геометрии points_table
с SRID 4326
несколькими точками.
Мне нужно найти расстояние между парой точек (особенностей) из этой таблицы.
Я хотел бы выбрать одну точку с помощью id = X
и другую точку с помощью, id = Y
а затем найти расстояние между ними с помощью ST_Distance
функции.
Я знаю, как запросить эти две точки из базы данных:
select * from points_table where id = X or id = Y;
Но этот запрос возвращает результат, который я не знаю, как передать ST_Distance
, потому что ST_Distance
принимает 2 параметра.
я пытался Select ST_Distance(select the_geom from points_table where id = X or id = Y);
Но это явно неправильно.
Как я могу найти расстояние между двумя геометрическими точками (объектами) из таблицы?
PS Все примеры, которые я нашел до сих пор, показывают использование ST_Distance с точками, закодированными в аргументах функции ST_Distance. Я не нашел пример, где ST_Distance используется для расчета расстояния между двумя точками из одной таблицы.
источник