1.获取重复数据

GET test.project/_search
{
    "size":0,
    "aggs":{
        "field":{
            "terms":{
                "field":"id.keyword",
                "size":3000,
                "min_doc_count":1
            }
        }
    }
}

2. 统计去重数目

GET test.project/_search
{
  "size": 0, 
  "aggs": {
    "count": {
      "cardinality": {
        "field": "id.keyword"
      }
    }
  }
}

3. 返回去重内容

3.1 aggs的方式 

GET test.project/_search
{
    "query":{
        "match_all":{

        }
    },
    "aggs":{
        "type":{
            "terms":{
                "field":"id.keyword",
                "size":10
            },
            "aggs":{
                "id_top":{
                    "top_hits":{
                        "_source":{
                            "includes":"name"
                        },
                        "sort":[
                            {
                                "create_date.keyword":{
                                    "order":"desc"
                                }
                            }
                        ],
                        "size":1
                    }
                }
            }
        }
    },
    "size":0
}

3.2 折叠方式

GET test.project/_search
{
    "query":{
        "match_all":{

        }
    },
    "collapse":{
        "field":"id.keyword"
    },
    "_source":{
        "includes":"name"
    }
}

Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐