2015-03-31 55 views
0

我使用Lucene.net v3.0.3.0进行索引和搜索,我有“CreateDateTime”字段存储文档创建datetime.I想用布尔“NOT”条件创建DateTime范围查询。意味着我想检索所有那些CreateDate不应该在我给出的范围内的文档,我可以创建查询但查询不返回任何结果。布尔NOT不与日期范围查询工作在Lucene.net v3.0.3.0

日期为mmddyyyyhhmmss格式。

我的日期范围为2014年7月15日12:00:00 AM到2015年3月31日下午11:59:59

我最后的查询如下,

-CreateDateTime: 20140715000000000 TO 20150331235959000]

我曾尝试使用卢克工具帮助同样的查询以及它也没有返回任何结果。索引创建正常,我能够触发所有类型的需求,除了DateRange查询NOT布尔条件。 NOT在其他领域工作得很好。

有什么建议吗?

回答

0

这是您在搜索请求中唯一的查询吗?你不能只提供一个否定的查询,你也需要一些匹配的查询。将MatchAllDocsQuery添加到布尔查询中,结果应该为*:* -CreateDateTime:[...]