5

我们如何让 Solr 3.6.1 返回按距离过滤和排序的地理空间搜索结果bbox

我尝试按照Solr 文档中的说明将 a 附加&sort=geodist() asc到 URL ,但出现错误:

sort param could not be parsed as a query, and is not a field that exists in the index: geodist()

使用 sort & bbox 查询 URL(不工作)

http://localhost8080/solr/select?wt=json&indent=true
&q=*:*
&fl=id,latlng
&fq={!bbox%20pt=42.352455,-71.048069%20sfield=latlng%20d=5}
&sort=geodist() asc

使用排序查询 URL (Works)

http://localhost:8080/solr/select?wt=json&indent=true
&fl=id,latlng
&q=*:*
&sfield=latlng
&pt=42.352455,-71.048069
&sort=geodist()%20asc

使用 bbox 查询 URL (Works)

http://localhost8080/solr/select?wt=json&indent=true
&q=*:*
&fl=id,latlng
&fq={!bbox%20pt=42.352455,-71.048069%20sfield=latlng%20d=5}

如何bbox按距离(geodist())过滤和排序结果?

4

1 回答 1

5

只需将您拥有的“pt”和“sfield”本地参数拉出到顶级查询参数中,就像您对工作排序查询所做的那样。您的 fq 将只是 {!bbox d=5}

于 2012-09-28T04:52:13.720 回答