Not: Bu soru ilk önce Stackoverflow'da yayınlandı .
Bir geometri masam points_table
var SRID 4326
ve içinde birkaç nokta var.
Bu tablodan bir çift nokta (özellikler) arasında bir mesafe bulmam gerekiyor.
İle bir noktayı id = X
ve başka bir noktayı seçmek id = Y
ve sonra ST_Distance
işlev ile aralarında bir mesafe bulmak istiyorum .
Bu iki noktayı veritabanından nasıl sorgulayacağımı biliyorum:
select * from points_table where id = X or id = Y;
Ancak bu sorgu 2 parametre alır ST_Distance
, çünkü ben geçmek için nasıl bilmiyorum bir sonuç döndürür ST_Distance
.
denedim Select ST_Distance(select the_geom from points_table where id = X or id = Y);
Ama bu kesinlikle yanlış.
Tablodan iki geometri noktası (unsur) arasındaki mesafeyi nasıl bulabilirim?
PS Şimdiye kadar bulduğum tüm örnekler ST_Distance fonksiyonunun argümanlarına sabit kodlanmış ST_Distance kullanımını göstermektedir . ST_Distance aynı tablodan iki nokta arasındaki bir mesafeyi hesaplamak için kullanılan bir örnek bulamadım.