Solr范围不过滤

时间:2012-06-25 12:33:20

标签: java solr lucene

我正在尝试使用price.facet.range,但它不起作用,它总是会返回未经过滤的结果

索引:

<field name="price" type="sdouble" indexed="true" stored="false" multiValued="true" /> 

solrDoc.addField("price", 22.99);

创建查询:

query.addNumericRangeFacet("price", 0.0 ,100.0, 0.01);

创建了查询:

q=mobile+phone&
fl=productId+score&
payload=true&
payload.fl=full_text&
facet.range=price&
f.price.facet.range.start=0.0&
f.price.facet.range.end=100.0&
f.price.facet.range.gap=0.01&
facet=true&
/...

2 个答案:

答案 0 :(得分:2)

我找到了解决方案

query.addFilterQuery("price:[0 100]");

答案 1 :(得分:0)

Faceting始终对过滤后的结果('fq'和'q'参数)进行操作,除非您明确排除了未经过过滤的查询。您是否可以使用Solr中的exampledocs数据重现问题,还是使用其他人可以轻松验证的设置?