Solr的分面范围查询。无法解析1,2,3,10的差距

时间:2015-02-13 13:34:11

标签: solr solr4 solr-query-syntax

我正在尝试查询数据(使用solr)并获得castleid粒度。

我有一个 Solr 4.10 的本地运行实例。

乞讨我在solr wiki中做了一个简单的查询,用于范围刻面: Solr examples for range faceting

我尝试了以下查询:

&facet=true
&facet.range=castleid
&f.castleid.facet.range.start=0
&f.castleid.facet.range.end=1000
&f.castleid.facet.range.gap=1,2,3,10

此查询的网址:

select?q=table%3Acontent&wt=json&indent=true&facet=true&facet.range=castleid&f.castleid.facet.range.start=0&f.castleid.facet.range.end=10000&facet.range.gap=1%2C2%2C3%2C10

我得到的错误是:

"无法解析字段1,2,3,10:castleid"

我做错了什么或者不可能以这种方式制作音域?

2 个答案:

答案 0 :(得分:3)

该示例提到了一个实验性功能,据我所知,is not committed in the current version

您可以使用Interval Faceting来解决此问题(尽管这需要您自己创建间隔存储区)。

答案 1 :(得分:1)

我的例子的完整答案是:

我通过在castleid字段的架构中设置docValues =“true”来启用间隔。 相应的查询应如下所示:

&facet=true
&facet.interval=castleid
&f.castleid.facet.interval.set=[0,1]
&f.castleid.facet.interval.set=[2,2]
&f.castleid.facet.interval.set=[3,3]
&f.castleid.facet.interval.set=[4,13]
&f.castleid.facet.interval.set=[14,23]
&f.castleid.facet.interval.set=[24,33] 
. 
. 
.
&f.castleid.facet.interval.set=[994,1003]