【发布时间】:2019-08-18 23:10:25
【问题描述】:
我正在设计一个新索引,并且我的数据中有一些结构可能会给搜索带来一些麻烦。
给定一个文档类型“目录”(将其转换为更通用的设置)
具有如下数据结构,
{
"_id": 1,
"categories": [
{
"category_name": "aaaa",
"nb_items": 6
},
{
"category_name": "bbbb",
"nb_items": 5
}
]
},
{
"_id": 2,
"categories": [
{
"category_name": "cccc",
"nb_items": 9
},
{
"category_name": "bbbb",
"nb_items": 2
}
]
}
如何查询所有类别的项目数(按类别名称计算 nb_items 的总和)> 10 但类别 bbbb 中的 nb_items > 4 的文档以仅检索第一个文档?
使用两个独立的列表类别和 nb_items 或使用这样的嵌套文档会更容易吗?
【问题讨论】:
-
请澄清:如何查询所有类别的项目数(按类别名称计算的 nb_items 总和)> 10 但类别 bbbb 中的 nb_items > 4 的文档以仅检索第一个文档? 使用例如
-
doc 1 被选中是因为 (6+5 > 10 and 5 > 4) 并且 doc 2 没有被选中因为 (9+2 > 10 but 2
标签: elasticsearch nested aggregation