【发布时间】:2018-10-23 03:36:32
【问题描述】:
我有带有类别字段的产品。使用聚合我可以获得包含所有子类别的完整类别。我想限制方面的级别。
例如我有这样的方面:
auto, tools & travel (115)
auto, tools & travel > luggage tags (90)
auto, tools & travel > luggage tags > luggage spotters (40)
auto, tools & travel > luggage tags > something else (50)
auto, tools & travel > car organizers (25)
使用聚合之类的
"aggs": {
"cat_groups": {
"terms": {
"field": "categories.keyword",
"size": 10,
"include": "auto, tools & travel > .*"
}
}
}
我得到了喜欢的桶
"buckets": [
{
"auto, tools & travel > luggage tags",
"doc_count": 90
},
{
"key": "auto, tools & travel > luggage tags > luggage spotters",
"doc_count": 40
},
{
"key": "auto, tools & travel > luggage tags > something else",
"doc_count": 50
},
{
"key": "auto, tools & travel > car organizers",
"doc_count": 25
}
]
但我想限制级别。例如我只想获得auto, tools & travel > luggage tags 的结果。如何限制级别?
顺便说一句,"exclude": ".* > .* > .*" 不适合我。
我需要根据搜索得到不同级别的桶。有时一级,有时二级或三级。当我想要第一级时,我不希望第二级出现在存储桶上;以此类推其他级别。
Elasticsearch 6.4 版
【问题讨论】:
标签: elasticsearch elastic-stack