日期范围查询Elasticsearch

时间:2016-07-12 13:16:16

标签: elasticsearch nest

在Elasticsearch版本1.x

中执行时查询下方

正在考虑2016年6月15日之后创建的文件,这些文件的截止日期为2016年6月15日上午12点之前。正在考虑截至2016年6月15日的文件23:59:59.999。

但是对于新版本的ES 2.x,范围查询已停止考虑截止时间超过12 am的日期为2016年6月15日的文档。现在正在考虑文件,直到2016年6月14日23:59:59.999。

这里究竟发生了什么变化?

{
 "from": 0,
 "size": 10,
 "sort": [
   {
     "PRONumber.sort": {
       "order": "desc"
     }
   }
 ],
 "query": {
   "bool": {
     "must": [
       {
         "match": {
           "BOLNumber": {
             "query": "7861254",
             "analyzer": "gtz_search_analyzer",
             "operator": "and"
           }
         }
       },
       {
         "range": {
           "CreatedDate": {
             "gte": "1753-01-01",
             "lte": "2016-06-15"
           }
         }
       }
     ]
   }
 }
}

1 个答案:

答案 0 :(得分:2)

在弹性搜索2.x中,对于OP中的查询,上限为OPTIONS而不是6/15/2016 00:00:00.000
documentation开始,您需要在查询中明确指定日期6/14/2016 23.59.59.999,如下例所示

示例:

round-up