У меня есть 3 коллекции: 'group10', 'group20' и 'parent'
Я хочу выполнить поиск $ в конвейере агрегации из одной из этих коллекций в зависимости от условия в коллекции 'parent'.
Коллекция 'parent':
[{_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'
}
но при получении этой ошибки: опция 'from' для $ lookup должна быть строкой, но имела тип объекта