Ако разбирам правилно въпроса, това, което се опитвате да постигнете е
totals of all DISTINCT users_id under a day
Или както аз го разбирам:Брой уникални user_ids на ден.
За целта можете да вземете групата, която вече имате, и да изрежете броя, така че да имате само уникален _id.user_id
и _id.day
стойност:
'$group' => array(
'_id' => array(
'user_id' => '$user_id',
'day' => '$day'
)
)
След това препратете това към друга $group
оператор, който отчита броя документи на ден, тъй като има точно един за всеки уникален user_id
/day
комбинация:
'$group' => array(
'_id' => '$_id.day',
'count' => array('$sum' => 1)
)