具有匹配项的弹性搜索日期范围不起作用

时间:2018-08-01 08:32:16

标签: elasticsearch search elasticsearch-5

我正在尝试获取与特定字段匹配的记录,如下所示两个日期之间

{
  "query": {
    "bool": {
         "must": [
            {
              "range": {
                "createdtime": {
                  "gte": "now-1y",
                  "lte": "now",
                  "boost" : 2.0
                }
              }
            },
            {
               "match": {
                  "id": 350403
               }
            }
         ]
    }
  }
    "size" : 10000,
    "from": 0,
    "sort": { "createdtime" : {"order" : "desc"} }  

但是它引发了异常,任何人都可以帮助修复它吗?

1 个答案:

答案 0 :(得分:1)

您应正确设置查询格式并缩进查询,这样更容易发现错误。正确的查询可以在下面找到:

{
  "query": {
    "bool": {
      "must": [
        {
          "range": {
            "createdtime": {
              "gte": "now-1y",
              "lte": "now",
              "boost": 2
            }
          }
        },
        {
          "match": {
            "id": 350403
          }
        }
      ]
    }
  },
  "size": 10000,
  "from": 0,
  "sort": {
    "createdtime": {
      "order": "desc"
    }
  }
}