Deal.aggregate([
{
'$sort': {
'_id': -1 // тупо по айди, если есть поле в духе created_at, то использовать его
}
}, {
'$limit': 50
}, {
'$group': {
'_id': '$city', // сюда поле
'data': {
'$push': '$$ROOT' // это чтобы добавился массив с записями в результат
}
}
}
])