在solr查询中按天或月分组日期的最佳方法是什么?
例如,如果我使用以下格式的日期:20140108180854746
(实际上格式在这里并不重要,也可能是正常格式),是否有一种简单的方法可以组合几天或几个月。
有人建议保留一个字段只是为了它将分组的日子,而我看到的另一个解决方案是
&group=true&group.func=rint(div(ms(date_dt),mul(24,mul(60,mul(60,1000)))))
这不是完全用户友好的,但我会猜测它。 关于那个的一般建议吗?
答案 0 :(得分:5)
有内置的刻面方法来实现这一目标。您可以使用" facet.date.gap"实现这一点的param。看一下下面的例子。
q=solr&facet=true
&facet.date=j_createddate
&facet.date.gap=+1DAY,+2DAY,+3DAY,+10DAY
在这里,我们为j_createddate定义日期方面,即日期字段。然后我们为间隙1天,2天,3天和10天创建隔间
参考http://solr.pl/en/2010/08/23/the-scope-of-solr-faceting/& http://wiki.apache.org/solr/SimpleFacetParameters#facet.date.gap