我有 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 的“来自”选项必须是字符串,但类型为对象