В моем проекте я хочу go заполнить (заполнить) поле project
1
.
. Я использую следующий запрос агрегации для получения данных из двух коллекций:
Investment.aggregate([
{
$project: {
year: { $year: "$date" },
month: { $month: "$date" },
_id: 1,
convAmt: 1
},
}, {
$group: {
_id: { year: "$year", month: "$month" },
totalInvestMonthy: { $sum: "$convAmt" },
amount: {
$push: '$convAmt',
},
}
},{
$lookup: {
from: 'investments',
foreignField: "convAmt",
localField: "amount",
"as": 'users_docs'
},
},{
$match: {
"_id.year": year, // year is passed in params
}
},
]),
и результат кода - это JSON, ниже
"data": [
{
"_id": {
"year": 2020,
"month": 2
},
"totalInvestMonthy": 650.98,
"amount": [
374.03,
],
"users_docs": [
{
"_id": "5e6a140ab1fdbf34c86322e5",
"project": "5e68842bfa26a40830a30823", // I want to populate here
"date": "2020-02-21T10:50:32.000Z",
"convAmt": 374.03,
"user": "5e2ea3b25a436604ecf558b3",
"username": "Zeeshan2016",
},
]
},
Я хочу получить конечный результат, как показано ниже, в одном объекте; Я не хочу отдельный объект только для project
"users_docs": [
{
"_id": "5e6a140ab1fdbf34c86322e5",
"project":{
"_id": "5e688cd02369930b581ec5f7",
"projectName": "KhataBook Andorid"
}
"convAmt": 374.03,
"username:"zeeshan4019"
"user": "5e2ea3b25a436604ecf558b3",
},
]