到目前为止,我有一个聚合查询正在完全按照我想要的方式进行操作,但是在最后一步,我一直在转换数据。我有以下内容:
{
"name": "a",
"tasks": [ { .. }, { .. }]
},
{
"name": "b",
"tasks": [ { .. }, { .. }]
}
我要做的就是将tasks
中的每个条目映射到单独的结果。对我来说听起来很简单。
预期输出应为
{ "name": "a", "task": { .. } },
{ "name": "a", "task": { .. } },
{ "name": "b", "task": { .. } },
{ "name": "b", "task": { .. } }
我尝试使用{ $unwind: '$tasks' }
希望可以得到单独的条目,但它似乎只会扩展第一个结果。我只能从a
获得任务。
我也尝试过$map
,但是有类似的问题。
如有必要,每个_id
中都有一个task
可用于唯一性。那就是我要完成的工作,键值对的映射,例如
{ "_id": "idFromTheTask", "name": "a" }