Elasticsearch php客户端日期范围不工作


Elasticsearch php client date range not working

我使用的是官方PHP客户端- https://www.elastic.co/guide/en/elasticsearch/client/php-api/current/index.html

一切都很好,但有一件事-按日期范围过滤;映射中的字段类型是Date,但是我没有得到过滤后的结果。查询结构看起来像这样,它的工作很好,当我在Sense chrome插件执行:

{
"query": {
    "filtered": {
        "query": {
            "match_all": {}
        },
        "filter": {
            "range": {
                "myfield": {
                    "gt": "2015-01-10"
                }
            }
        }
    }
}

}

映射字段:

"myfield": {
              "type": "date",
              "format": "dateOptionalTime"
           }

在php客户端,我试图检查范围过滤器与另一个字段,这不是datetype,它工作得很好,唯一的问题与datetype字段。

谢谢。

我也有同样的问题。根据文件,它应该工作,但不是为我。你没有张贴你的映射文件,但下面的代码为我工作。

用from代替gt。

的例子:

{
   "query": {
      "filtered": {
         "query": {
            "match_all": {}
         },
         "filter": {
            "range": {
               "myfield": {
                  "from": "2015-01-10"
               }
            }
         }
      }
   }
}