【发布时间】:2019-10-05 05:28:18
【问题描述】:
我有 3 个集合:'group10'、'group20' 和 'parent'
我想根据“父”集合中的条件从这些集合之一在聚合管道中进行 $lookup。
集合'父':
[{_id: 1, groupId: 10},
{_id: 2, groupId: 20}]
集合'group10':
[{_id: 1, groupId: 10, userData: 'A'},
{_id: 2, groupId: 10, userData: 'B'}]
集合'group20':
[{_id: 1, groupId: 20, userData: 'C'},
{_id: 2, groupId: 20, userData: 'D'}]
我尝试了下一个代码:
$lookup: {
from: {
$cond: [{
$eq: ['$groupId', 10]
},
'group10',
'group20'
]
},
localField: 'groupId',
foreignField: 'groupId',
as: 'data'
}
但收到此错误: $lookup 的 'from' 选项必须是字符串,但类型为对象
【问题讨论】:
标签: mongodb aggregation-framework mongodb-stitch