在我的数据库中,每个文档都包含一个元素的嵌套数组,其中包含以下形式的项:
elements:[
{
"elem_id": 12,
items: [ {"i_id": 1, "type": x}, {"i_id": 2, "type": y}, {"i_id": 3, "type": x}]
},
{
"elem_id": 13,
items: [ {"i_id": 4, "type": x}, {"i_id": 5, "type": x}]
}
]
我试图返回所有具有不同类型项的元素,这意味着我只会得到以下内容:
{
"elem_id": 12,
items: [ {"i_id": 1, "type": x}, {"i_id": 2, "type": y}, {"i_id": 3, "type": x}]
}
因为有类型为x和类型为y的项目。
我认为我需要迭代项目数组并比较数组中每一项的类型与之前项目的类型,但我无法弄清楚如何在聚合中实现这一点。
需要注意的是- 我正在使用Redash,因此无法在查询中包含任何JS。
谢谢您的帮助!
"elem_id": 12
,items
数组的最后一个item
必须是"type": z
,对吗? - Dheemanth Bhat