Я использую агрегатный конвейер.
const pipeline = [
{ $match: query } // first pipeline stage
]
это даст следующий результат:
{"_id": ObjectId ("512bc95fe835e68f199c8686"), "author": "dave",
"оценка": 80, "просмотров": 100}
{"_id":
ObjectId ("512bc962e835e68f199c8687"), "author": "dave", "score": 85,
"views": 521}
Я хочу уменьшить этот результат конвейера (в данном случае это массив) в объект. Я знаю, мы можем сократить с проектом
Вторая очередь трубопровода:
{
$project: {
results: {
$reduce: {
input: <array>, // We have $$ROOT, but I need previous pipeline result
initialValue: <expression>,
in: <expression>
}
}
}
Как мы можем сослаться на предыдущий результат конвейера как массив на эту стадию конвейера?