3

我只想通过查询获取 _source 字段。但它返回对我来说不必要的命中。所以如何在 _source 数据之前删除这些命中。

GET fms/user/_search?filter_path=hits.hits._source{"query": {"match_all": {}}}

在此处输入图像描述

4

1 回答 1

1

如果要过滤 _source 字段,则应考虑将现有的 _source 参数与 filter_path 参数结合起来,如下所示:

POST /library/book?refresh
{"title": "Book #1", "rating": 200.1}
POST /library/book?refresh
{"title": "Book #2", "rating": 1.7}
POST /library/book?refresh
{"title": "Book #3", "rating": 0.1}

GET /_search?filter_path=hits.hits._source&_source=title&sort=rating:desc

{
  "hits" : {
    "hits" : [ {
      "_source":{"title":"Book #1"}
    }, {
      "_source":{"title":"Book #2"}
    }, {
      "_source":{"title":"Book #3"}
    } ]
  }
}

有关更多详细信息,请访问https://www.elastic.co/guide/en/elasticsearch/reference/current/common-options.html

由于您已经在使用 filter_path,因此您已经只获得了源字段。

于 2017-10-03T05:53:58.603 回答