可以说我在索引上有以下内容。
{ date : 2019-01-21T08:20:18.962Z , student : "A", "City": "city1" }
{ date : 2019-01-21T08:20:55.962Z , student : "A", "City": "city1" }
{ date : 2019-01-21T08:29:20.962Z , student : "B", "City": "city1" }
{ date : 2019-01-21T08:20:10.962Z , student : "A", "City": "city1" }
{ date : 2019-01-21T08:29:21.962Z , student : "B", "City": "city1" }
我想在单个查询中获取学生A和学生B的最新日期,以便获得以下输出:
{ date : 2019-01-21T08:20:55.962Z , student : "A", "City": "city1" }
{ date : 2019-01-21T08:29:21.962Z , student : "B", "City": "city1" }
我知道使用日期排序和申请必须与学生匹配:“ A”将为我提供学生A的最新日期,以及为学生B的最新日期。但是我需要为此运行两个单独的查询。
请告知我们是否可以在单个查询中实现此目标,以及如何实现。
谢谢。
我尝试排序必须与过滤器匹配
答案 0 :(得分:0)
您在学生身上聚合(= groupby)。 您将按stutengs分组文档。您只需要保留所需的记录即可: https://www.elastic.co/guide/en/elasticsearch/reference/current/search-aggregations.html