elasticsearch - Elasticsearch对嵌套字段的不同计数

标签 elasticsearch

根据文档,大约可以通过使用基数来实现。
https://www.elastic.co/guide/en/elasticsearch/guide/current/cardinality.html

我有很多这样的数据存储:

{
    {
        "foo": {
            "bar": "a1"
        }
    },
    {
        "foo": {
            "bar": "a2"
        }
    }
}

并且我想对“foo.bar”值进行不同的计数。

我的DSL查询:
{
    "size": 0,
    "aggs": {
        "number_of_bars": {
            "cardinality": {
                "field": "bar"
            }
        }
    }
}

返回“number_of_bars”:0。我也在尝试“field”:“foo.bar”,这导致错误。

你能告诉我,我做错了吗?

最佳答案

使用此:

{
    "size": 0,
    "aggs": {
        "number_of_bars": {
            "cardinality": {
                "field": "foo.bar.keyword"
            }
        }
    }
}

关于elasticsearch - Elasticsearch对嵌套字段的不同计数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51173845/

相关文章:

elasticsearch - 如何在Elasticsearch中停止正在进行的导入

docker - 在树莓派 3 上运行 elasticsearch 容器

elasticsearch - Elasticsearch匹配字符串数组

elasticsearch - 为什么 'exists'对于普通查询而不是过滤查询失败?

javascript - 如何在一个 grunt.registerTask 中调用多个 grunt.run.task?

c# - 在Elasticsearch 5中更改映射属性分析器

node.js - ElasticSearch标准Node客户端可安全用于云功能吗?

django - 使用 django-haystack rebuild_index 命令重建 ElasticSearch 索引

elasticsearch - ElasticSearch Nest:只能在关键字和文本字段上使用前缀查询-不能在float类型的字段上使用前缀查询

email - 在 ElasticSearch 上提取电子邮件附件