Für den Anfang muss ich sagen, ich bin neu zu mongo (3.2). Ich benutze mongo-odm-aggregation-bundle für PHP-Framework Symfony (2.8.4). Ich möchte die Summe einiger Felder erhalten, die nach Daten begrenzt sind. Bisher konnte ich Summen für alle Datensätze erhalten:Symfony mongo-odm-Aggregation-Bündel Summen
$expr = new \Solution\MongoAggregation\Pipeline\Operators\Expr;
$aq = $this->manager->getCollection('AppBundle:UserDaySums')->createAggregateQuery()->group([
'_id' => 'client.$id',
'total' => $expr->sum('$aSum'),
])
Nun würde ich diese Abfrage durch datefrom, dateTo und userId beschränken möchten. Ich bin mir nicht sicher, wie es geht. Ich weiß, ich sollte wahrscheinlich Match-Funktion verwenden, aber ich weiß nicht wie. Oder gibt es eine bessere Lösung?
Danke für die Antworten!
KP
Danke, das ist was ich brauchte. Ich änderte es gerade zu '$ aq -> Übereinstimmung ([ 'Datum' => $ expr-> gte ($ dateFrom), 'Datum' => $ expr-> lte ($ dateTo), 'Benutzer. $ id '=> $ expr-> in ($ userMongoIds) ]) ' –