Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/solr/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
<img src="//i.stack.imgur.com/RUiNP.png" height="16" width="18" alt="" class="sponsor tag img">elasticsearch elasitcsearch查询中嵌套对象的Agg计数仅一次_<img Src="//i.stack.imgur.com/RUiNP.png" Height="16" Width="18" Alt="" Class="sponsor Tag Img">elasticsearch_Solr_Lucene - Fatal编程技术网 elasticsearch elasitcsearch查询中嵌套对象的Agg计数仅一次,elasticsearch,solr,lucene,elasticsearch,Solr,Lucene" /> elasticsearch elasitcsearch查询中嵌套对象的Agg计数仅一次,elasticsearch,solr,lucene,elasticsearch,Solr,Lucene" />

elasticsearch elasitcsearch查询中嵌套对象的Agg计数仅一次

elasticsearch elasitcsearch查询中嵌套对象的Agg计数仅一次,elasticsearch,solr,lucene,elasticsearch,Solr,Lucene,我们有一个嵌套对象的映射。 我们使用它在电子商务环境中存储变体 为了在电子商务中构建过滤器,我们检查agg桶计数。 现在发生的是,我们得到了匹配的每个变量的agg计数。 但我只想为每位家长计算一次(即使有多个孩子匹配) 这是我们的地图: { "products": { "mappings": { "dynamic": "false", "properties": { "product_id": { "

我们有一个嵌套对象的映射。 我们使用它在电子商务环境中存储变体

为了在电子商务中构建过滤器,我们检查agg桶计数。 现在发生的是,我们得到了匹配的每个变量的agg计数。 但我只想为每位家长计算一次(即使有多个孩子匹配)

这是我们的地图:

{
"products": {
    "mappings": {
        "dynamic": "false",
        "properties": {
            "product_id": {
                "type": "keyword"
            },
            "variants": {
                "type": "nested",
                "properties": {
                    "brand": {
                        "type": "keyword"
                    },
                    "color": {
                        "type": "keyword"
                    }
                }
            }
        }
    }
}
文件示例:

 {
            "_index": "products",
            "_type": "_doc",
            "_id": "5e42f759de235d5b42e6e35524141bd2cfcbc5d0",
            "_score": 1.0,
            "_source": {
                "product_id": "5e42f759de235d5b42e6e35524141bd2cfcbc5d0",
                "variants": [
                    {

                        "color": [
                            "Black"
                        ]
                        "brand": "Fackelmann"
                    },
                    {
                        "color": [],
                        "brand": "Fackelmann"
                    },
                    {
                        "color": [],
                        "brand": "Fackelmann",
                    },
                    {
                        "color": [],
                        "brand": "Fackelmann"
                    }
                ]
            }
        },
        {
            "_index": "products",
            "_type": "_doc",
            "_id": "768af68018654b04f20d32003348ee9bd81d9f65",
            "_score": 1.0,
            "_source": {
                "product_id": "768af68018654b04f20d32003348ee9bd81d9f65",
                "variants": [
                    {

                        "color": [
                            "Grey"
                        ]
                        "brand": "Fackelmann"
                    },
                    {
                        "color": [],
                        "brand": "Fackelmann"
                    },
                    {
                        "color": [],
                        "brand": "Fackelmann",
                    },
                    {
                        "color": [],
                        "brand": "IKEA"
                    }
                ]
            }
        }
在本例中,我们得到了AGG的计数:

brand:Fackelmann[7]
brand:IKEA[1]
color:Grey[1]
color:Black[1]
我希望得到的是:

brand:Fackelmann[2]
brand:IKEA[1]
color:Grey[1]
color:Black[1]

为什么法克尔曼[2]?可以将您的查询粘贴到问题中吗?为什么是Fackelmann[2]?可以将您的查询粘贴到问题中吗?