在查询时从结果集中删除文档并返回所需数量的文档

时间:2016-11-12 00:19:33

标签: elasticsearch elasticsearch-dsl

让我们举一个例子然后我将解释我想要解决的问题。

假设我的映射如下:

{
  "parent_id": { "type": "integer" },   
  "mydata": {
    "type": "nested",
    "dynamic": "strict",
    "properties": {
      "name": {"type": "string"},
      "location": { "type": "geo_point"} 
    }                     
  }

}

在这里,我希望找到符合某些条件的所有文档(以分页方式=每页10个文档),但在该结果集中,我希望仅保留一个与最高得分文档最佳匹配的唯一parent_id文档。这意味着假设在结果中有五个这样的文档具有相同的parent_id,那么我将根据其中的最高分选择其中一个。然而,最终,分页应该总是返回消除后的结果所需的(例如10个)数字。甚至可以在查询时进行吗?我正在使用ES 2.3

0 个答案:

没有答案