我有一个Solr查询:
q=*%3A*&rows=0&wt=json&indent=true&facet=true&facet.range.start=NOW-24MONTHS&facet.range=create_date_tdt&facet.range.end=NOW&facet.range.gap=%2B1MONTH
此查询中唯一更改的是facet.range.start值,该值可以是NOW-12MONTHS
,NOW-24MONTHS
或NOW-36MONTHS
。
对于NOW-12MONTHS
,结果集"end": "2016-06-29T16:38:11.959Z"
对于NOW-24MONTHS
,结果集"end": "2016-07-28T16:15:17.087Z"
这些查询分开运行几分钟,因此最终值不应该是下个月。
我正在使用Solr 4.8.1
答案 0 :(得分:0)
日期范围的通常良好做法是确保数学的粒度相同。这意味着现在以 NOW / MONTH 为每月粒度。您可能需要稍后调整结束日期,以确保今天包含新的表示法(例如,结束= NOW / MONTH + 1MONTH)。
我会测试一下,看看问题是否消失。
此外,在查询中未分配NOW对于缓存效率非常低,因为查询无法重复使用。