solr tagging&排除范围方面的过滤器

时间:2013-08-20 03:52:52

标签: solr filter facet

我正在创建一个不均匀的范围方面,我想支持多种选择。但是,过滤器的标签/排除项上的构面停止工作。 以下是我的价格方面 0-20 20-50 50-100 100- * 最初我使用facet查询填充以上范围。 现在,无论最终用户选择0-20和20-50, 我正在生成以下内容

http://localhost:8983/solr/catalog/select?q=games&facet=true&wt=xml&rows=0&     fq={!tag=salePrice}salePrice:[0 TO 20]&facet.query={!ex=salePrice}[0 to 20]&      fq={!ex=salePrice}salePrice:[20 TO 50]&facet.query={!ex=salePrice}[20 to 50]&       other params.

&安培;系统返回零结果。

我看到SOLR JIRA错误已经关闭了。

https://issues.apache.org/jira/browse/SOLR-3819

但是,如果只有一个facet.query正在运行。 在我的例子中,我使用多个facet.query与不均匀的范围。 请帮忙。

1 个答案:

答案 0 :(得分:0)

您的查询有两个不重叠的fq条款。这就是为什么你得到零结果 - 与facet或标签本身无关。对于多选,您需要将它们与" OR"组合。

而不是

...&fq={!tag=salePrice}salePrice:[0 TO 20]&...&fq={!ex=salePrice}salePrice:[20 TO 50]&...

你想要

...&fq={!tag=salePrice}salePrice:[0 TO 20] OR salePrice:[20 TO 50]&...

(或组合成一个范围)