solr中的facet中的多个范围

时间:2012-09-25 09:32:37

标签: solr lucene facet

如何格式化Solr构面查询以包含两个页面视图范围?

以下内容仅返回200 TO 250范围内的500 to 550范围内的任何内容。

<str name="fq">pageviews:[200 TO 250] OR [500 TO 550]</str>

我很想获得与200到250之间以及500到550之间的网页浏览量相匹配的记录数。

3 个答案:

答案 0 :(得分:4)

您也可以使用它,如下所示。

fq=pageviews:([200 TO 250] OR [500 TO 550])

答案 1 :(得分:3)

结果我需要每次都提到这个领域:

pageviews:[200 TO 250] OR pageviews:[500 TO 550]

答案 2 :(得分:3)

我相信这个问题的完整答案应该包括一种配置这些“重复”方面的所有参数的方法。这是使用JSON在Solr 4.4.0中完成的。

"facet.range": [

    "{!key=twohundred " +
        "f.pageviews.facet.range.start=200 " +
        "f.pageviews.facet.range.end=250 " + 
        "f.pageviews.facet.range.gap=1 " +
    "}pageviews",

    "{!key=fivehundred " +
        "f.pageviews.facet.range.start=500 " +
        "f.pageviews.facet.range.end=550 " + 
        "f.pageviews.facet.range.gap=10 " +
    "}pageviews"

]

(请注意,数组中的每个条目都应该是没有换行符的字符串,但为了清楚起见,这里将其划分。)

这样每个方面都可以单独标记,修改(我改变了'五百'的间隙),或者可以添加任何其他参数(如'facet.range.other')。

来源:https://issues.apache.org/jira/browse/SOLR-1351