Java 用于计算两点之间地理距离的Solr查询

Java 用于计算两点之间地理距离的Solr查询,java,apache,solr,solrj,Java,Apache,Solr,Solrj,我有两个营业地点的经纬度,想计算它们之间的距离。我如何使用solr查询来实现它 我得到了从一个点(纬度、经度)获取所有最近位置的查询 但是需要一个查询来获取两点之间的距离 下面是从一个点获取位置的示例代码段 //样本位置 location = new double[]{lat, long}; SolrQuery query = new SolrQuery("{!func}geodist()"); query.set("fq","query"); query.set("sfield",

我有两个营业地点的经纬度,想计算它们之间的距离。我如何使用solr查询来实现它

我得到了从一个点(纬度、经度)获取所有最近位置的查询

但是需要一个查询来获取两点之间的距离

下面是从一个点获取位置的示例代码段

//样本位置

location = new double[]{lat, long}; 

SolrQuery query = new SolrQuery("{!func}geodist()");  
query.set("fq","query");  
query.set("sfield", "location");  
query.set("pt", location );  
query.setSortField("score", ORDER.asc);  
query.setFields("score", "id");  
SolrDocumentList list = solrServer.query(query).getResults();  

你看了吗?我从那里尝试了这个查询&sort=min(geodist(store,37.7,-122.4),geodist(store,39.7,-105))%20asc它给出的最大距离是1.0,这不是我猜想的实际距离。