我有一个带有solr.TrieDateField
的Solr文档架构,并注意到这个布尔查询(我没有创作)我认为可以从一些简化中受益;
q=-(-event_date:[2011-12-02T00:00:00.000Z TO NOW/DAY+90DAYS] OR (event_date:[* TO *]))
表示未来90天内的事件或非事件(请参阅Pure Negative获取Solr boolean NOT
表示法)。我的简化看起来像
q=event_date:[2011-12-02T00:00:00.000Z TO NOW/DAY+90DAYS] OR -event_date:[* TO *]
如上所述,这不起作用(0结果)。因此,作为测试,我单独运行修改后的OR查询的两侧,并且两个结果的总和(均为非零)等于原始查询的总和,我无法得出一个很好的解释原因。使用debugQuery=true
运行并没有任何帮助。
我把它放在solr-user上,会回复任何解决方案。