Remarque: Cette question a été publiée sur Stackoverflow dans un premier temps .
J'ai une table de géométrie points_table
avec SRID 4326
et quelques points dedans.
J'ai besoin de trouver une distance entre une paire de points (caractéristiques) de ce tableau.
Je voudrais sélectionner un point avec id = X
et un autre point avec id = Y
puis trouver une distance entre eux avec ST_Distance
fonction.
Je sais comment interroger ces deux points à partir de la base de données:
select * from points_table where id = X or id = Y;
Mais cette requête renvoie un résultat, auquel je ne sais pas comment passer ST_Distance
, car ST_Distance
prend 2 paramètres.
j'ai essayé Select ST_Distance(select the_geom from points_table where id = X or id = Y);
Mais c'est évidemment faux.
Comment puis-je trouver la distance entre deux points de géométrie (entités) d'une table?
PS Tous les exemples que j'ai trouvés jusqu'à présent montrent l'utilisation de ST_Distance avec des points codés en dur dans les arguments de la fonction ST_Distance. Je n'ai pas trouvé d'exemple, où ST_Distance est utilisé pour calculer une distance entre deux points de la même table.
la source