Я преобразовал запрос оболочки mongo в запросы к доктрине symfony4. Для этого я использую createAggregationBuilder . Он ничего не вернет и выбрасывает из памяти исключение.
Примечание: Даже если у меня тоже увеличен лимит php, я столкнулся с той же проблемой.
Пожалуйста, найдите следующие коды:
Запросы Shell Mongo:
db.Article.aggregate([
{
$group: {
_id: { department: "$department" },
count: { $sum: 1 }
}
},
{
$sort: {
salary: -1
}
}
]);
Выход Shell Mongo:
{ "_id" : { "department" : "IAS" }, "count" : 1 }
{ "_id" : { "department" : "DOCTOR" }, "count" : 1 }
{ "_id" : { "department" : "IT" }, "count" : 1 }
{ "_id" : { "department" : "sales" }, "count" : 4 }
Так же, как создали в symfony4. но я столкнулся с проблемой.
$builder = $this->createAggregationBuilder(Article::class);
$builder
->group()
->field('id')
->expression('$department')
->field('department')
->sum('$department')
->sort(['salary' => -1])
->limit(1);