У меня есть две коллекции в mongodb, которые называются «уведомления» и «трансляция». Я пытаюсь получить подробную информацию о коллекции «уведомлений», задав некоторые условия, указанные ниже.
Сценарий-1:
db.notification.find({"notificationId":"12345","incdTempType":"MultiPhase"}).toArray();
Вывод вышеуказанного запросабудет иметь вид
![Now the output of above query will be as](https://i.stack.imgur.com/rGBov.png)
Теперь я хочу дать имя этому выходному массиву как «Многофазный» вместо массива по умолчанию. Поэтому я попробовал это, используя $ project , но мне это не удалось.
Сценарий-2: Теперь scheduleID в массиве, т. Е. Выходные данные script1 должны совпадать с scheduleID в "broadcast" collection. Я сделал это, присоединившись к вышеуказанному запросу сценария-1 с использованием агрегата и присоединившись к коллекции broadcast , используя $ lookup . Выход этого сценария-2 должен быть назван «broadcast» . Для чего я попытался описанным ниже способом.
db.notificationBody.aggregate([
{ $match :{"notificationId":"1234","templateType":"Incident","incdTempType":"MultiPhase"}
},
{
$lookup:
{
from: "broadcastDetails",
localField: "scheduleId",
foreignField: "scheduleId",
as: "broadCast_array"
}
},
{
"$unwind":"$broadCast_array"
},
{$project : {"_id":0,"broadCast_array": 1}}
]);
Но указанный выше запрос, который я написал, не выполнил мое требование к тому, что я пытаюсь. Наконец, мой желаемый результат после слияния выходов сценария-1 и сценария-2 должен быть таким, как
мой окончательный результат:
object
{
"_id": "5d149e84c22d5075210e3879",
"notificationId": "1234",
"incdTempType":"MultiPhase",
"deleveried_to": [
{
"_id": "5d149eacc22d506067704e87",
"scheduleId": "6789"
},
{
"_id": "5d149eabc22d506067704e85",
"scheduleId": "a12fd515fb36574de81492d8ec2b41f5"
}
]
"multiphase":[
{
"_id": "5d149f93c22d5075f17d497b",
"notificationId": "1234",
"phaseTitle": "Backend Check"
},
{
"_id": "5d149f93c22d5075f17d497b",
"notificationId": "1234",
"phaseTitle": "Frontend Check",
}
]
};
![Here is the JSON view of above output](https://i.stack.imgur.com/Xvz8i.png)
Может кто-нибудь подсказать мне, как мне добиться окончательного результата?