This my collection:
{
"Id" : "4",
"tType" : "77",
"tId" : "001",
"variables" : [
{
"controller" : 4444,
"mod" : 41,
"var" : "41",
"Type" : 4,
"vType" : "DI",
"duration" : "",
"Data" : [
{
"Time" : 1483209000,
"value" : 50
},
{
"Time" : 1483209000,
"value" : 50
}
]
},
{
"controller" : 1,
"mod" : 1,
"var" : "1",
"Type" : 11,
"vType" : "AO",
"duration" : "",
"Data" : [
{
"Time" : 1483209000,
"value" : 30
},
{
"Time" : 1483209000,
"value" : 30
}
]
}
]
}
This was i tried:
db.app.aggregate([
{"$match":{
"variables.controller":4444,
"variables.mod":41,
"variables.var":"41"
}
},
{"$project":{
"_id":0,
"variables.Data.Time":1,
"variables.Data.value":1
}
}
])
In my collection i need to get first set off Data array fields only,based on filter condition variables array controller,tType fields, but in my above aggregate query it retrieve all variables arrays