Я использую оператор $ facet в моем представлении MongoDB для запуска двух конвейеров с одинаковыми данными. На заключительном этапе мне нужно объединить эти два вместе. Если бы мы работали с Mongo 3.6, я бы использовал оператор $ mergeObjects для этого. Тем не менее, мы используем версию 3.2, где $ mergeObjects недоступен. Итак, я пытаюсь выяснить, что эквивалент 3,2 это будет:
{
$replaceRoot: {
newRoot: {
$mergeObjects: ["$pipelineResults", {
totalCount: "$totalCount.value"
}]
}
}
}
Я пытался использовать $ project, например:
{
newRoot: {
$project: {
"$pipelineResults": 1,
totalCount: {
"$totalCount.value": 1
}
}
}
}
... но это не работает. Может быть, мне нужно сочетание $ group и $ project? Как бы это выглядело в 3.2?