You can project these parts and then group them so you can group the entire date:
$results = $c->aggregate(array( array( '$project' => array( 'year' => array('$year' => '$executed' ), 'month' => array('$month' => '$executed' ), 'day' => array('$dayOfMonth' => '$executed') ), ), array( '$group' => array( '_id' => array('year' => '$year', 'month' => '$month', 'day' => '$day'), 'count' => array('$sum' => 1) ), ), array( '$sort' => array( '_id.year' => 1, '_id.month' => 1, '_id.day' => 1 ), ), array( '$limit' => 30 ) ));
Something like this should do the trick, allowing you to sort, as you stated: $year-$month-$dayOfMonth .
source share