db.collection.aggregate([
{
$group:{
"_id": "$city",
"unique_count": {
$addToSet: "$zipcode"
}
}
},
{
$project:{
"distinct_zipcodes":{
$size: "$unique_count"
}
}
}
]);
db.some_coll.aggregate([
{$match: {$or: [{"send_uid": 1}, {"receive_uid": 1}]}},
{$group: {_id: "$session_name", last_msg: {$last: "$$ROOT"}}},
])