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