Solr多个方面的日期

时间:2010-06-18 10:25:09

标签: solr faceted-search

根据Apache Solr documentation on facets,我可以使用密钥,因为:'当使用不同的排除项多次在同一字段上进行分面时,这会很有用。'

我需要他们,因为我希望有一个方面给我“最后一天”,“上周”,“上个月”选项。

但是,当我指定一个设置了以下选项的查询时:

http://URL/select?
...unrelated...
facet=true&
facet.date={!key=some_key}created&
f.some_key.facet.date.start=NOW/DAY-1DAY&
f.some_key.facet.date.end=NOW/DAY&
f.some_key.facet.date.gap=NOW/DAY+1DAY
...unrelated...

Solr抱怨:

  

[例外] =>   org.apache.solr.common.SolrException:   缺少必需参数:   f.created.facet.date.start(或   默认值:facet.date.start)

当我设置facet.date.start或f.created.facet.date.start时,它们将覆盖我的some_key(开始/结束/间隙)的字段,这是无用的,因为我需要多个键...任何人都能指出我在正确的方向吗?由于我使用的库的限制,这需要在单个查询中完成。

1 个答案:

答案 0 :(得分:11)

您可以使用构面查询:

http://URL/select?
...unrelated...
facet=true&    
facet.query=[NOW-1DAY TO NOW]&
facet.query=[NOW-7DAY TO NOW]&
facet.query=[NOW-1MONTH TO NOW]&
...unrelated...