I have collection Users:
{ "_id" : ObjectId("59fdc96ce166111e8da178f3"), "id" : 724207, "gamename" : "Meller", "reports" : [ { "action" : "Umbrella", "exp" : 64, "date" : 1509811977 }, { "action" : "Umbrella", "exp" : 53, "date" : 1509812077 }, { "action" : "Umbrella", "exp" : 55, "date" : 1509815977 } ], "squad" : [ { "squad" : "Temp", "date" : 1509880801 } ] }
I have this query:
db.getCollection('Users').aggregate([
{
$project:
{
_id : true,
gamename: true,
reports: true
}
},
{
$unwind : '$reports',
},
{
$match : {
'reports.date' : {'$gte': 1509815900, '$lte':1509816000}
}
},
{
$group : {
_id : '$_id',
//id: 'id',
reports : {$addToSet : '$reports'}
}
}
])
It gives me what i want ( user reports for given period of time), however no gamename is in resulting set. How can i add it?
Thanks.