MongoDB
 sql >> Datenbank >  >> NoSQL >> MongoDB

So führen Sie Aggregate in Mongodb im Laravel-Framework aus

Sie können auf die Aggregatmethode in der Jenssegers-Bibliothek über raw() zugreifen Funktion.

Hier ist ein Beispiel für einen aggregierten Aufruf mit Gruppe, Sortierung, Limit und Projekt. Sie können es an Ihre Bedürfnisse anpassen:

//Perform an aggregate function and get a cursor
$cursor = Data::raw()->aggregate([
    ['$group' =>
        ['_id' => '$name', 'count' => ['$sum' => 1]]
    ],
    ['$sort' => ['count' => -1]],
    ['$limit' => 30],
    ['$project' => ['_id' => 0,
                   'text' => '$_id',
                   'size' => '$count',
                   ]
    ],
]);

//Iterate your cursor
$current = $cursor;
do {
    echo $current; //Process each element
} while (!($current = $cursor->next()));

Beachten Sie, dass die Verwendung von raw() -Methode erfordert die Verwendung eines Cursors, da es sich um einen Low-Level-Aufruf handelt.