K agregační metodě v knihovně Jenssegers můžete přistupovat pomocí raw()
funkce.
Zde je příklad agregovaného volání se skupinou, řazením, limitem a projektem. Můžete si jej přizpůsobit svým potřebám:
//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()));
Všimněte si, že pomocí raw()
metoda vyžaduje použití kurzoru, protože se jedná o nízkoúrovňové volání.