Прямо сейчас я столкнулся с проблемой, когда я хочу объединить коллекции в Mon go на основе переменной, поскольку данные хранятся в другой коллекции.
Мой набор данных будет выглядеть как
{
_id:5e424331134cea013014ea9e0,
process:"Process1",
event:"Event1",
collection:"Collection1",
Date:"2020-02-11",
},
{
_id:5e424135151cea32114ea9e0,
process:"Process2",
event:"Event2",
collection:"Collection2",
Date:"2020-02-11",
}
Коллекция, из которой мне нужны данные, сохраняется в значении поля $collection
.
Коллекции выглядят так:
Коллекция1:
{
_id:5e63636636cea32114ea9e0,
item:81740147,
value:2,
Date:"2020-02-11",
}
Сборник 2:
{
_id:5e63636636cea32114ea9e0,
user:testuser,
age:3,
Date:"2020-02-11",
}
Чего я хочу достичь в агрегированном пипилине, так это присоединиться к моим документам на основе имени коллекции.
Что я уже пробовал:
{
$lookup: {
from: '$collection',
localField: 'Date',
foreignField: 'Date',
as: 'join'
}
}
Это не сработало для меня. Возможно, у вас другая идея.
Пожалуйста, имейте в виду, что я могу использовать только структуру агрегации для решения проблемы, а не cli mongodb.