弹性搜索组由过滤器不起作用

时间:2017-07-13 09:30:56

标签: elasticsearch elasticsearch-2.0

我在编写索引时加入了几个表,同时尝试通过它获取组不起作用。

最初我已经执行了这个

{
    "size": 10000,
    "query": {
        "constant_score": {
            "filter": {
                "exists": {
                    "field": "test_id"
                }
            }
        }
    }
}

之后我修改了搜索查询以添加聚合,因为我正在寻找组,因为它提供了相同的数字记录,即使有多个记录显示具有相同的ID。

{
    "size": 10000,
    "query": {
        "constant_score": {
            "filter": {
                "exists": {
                    "field": "test_id"
                }
            }
        }
    },
    "aggs": {
        "group_test_id": {
            "terms": {
                "field": "test_id"
            }
        }
    }
}

我无法弄清楚我在哪里做错了,在过去的几个小时内尝试,任何帮助都会很棒。

1 个答案:

答案 0 :(得分:1)

使用aggs时,您应该将大小值设置为0

{
        "size": 0
        "aggs": {
                "groups": {
                    "terms": {
                        "field": "test_id",

                    }
                }
            }
}