elasticsearch获取唯一属性

时间:2019-01-22 11:23:22

标签: elasticsearch

是否可以查询elastic并获取uniqe属性?
例如: 如果索引中有3个文档:

{
"number": 3
"name": "larry",
"lastName":"ck"
},
{
"number": 5
"name": "one",
"lastName": "two"
"age":33
},
{
"number": 22
"name": "a",
"lastName": "b"
"age": 33,
"gender": "male"
}

我想获取所有1-10之间带有“数字”的文档的唯一属性(仅可容纳2个文档)

result = [number, name, lastName, age]

谢谢, 拉里

1 个答案:

答案 0 :(得分:0)

size = 0,因为我不希望文档结果(如您所愿)

第一个agg(groupby)是一个groupby,请在此部分中为您指定s是重复项 subagg(remove_dup)将仅保留第一个添加groupby中的第一个元素 源数组将绘制您指定的字段(不会打印所有字段)。

希望这就是您要寻找的东西!

{
  "size": 0,
  "aggs": {
    "group_by": {
      "terms": {
        "field": "fieldkey"
      },
      "aggs": {
        "remove_dup": {
          "top_hits": {
            "size": 1,
            "_source": [
              "field1",
              "field34"
            ]
          }
        }
      }
    }
  }
}