My Collection holds the structured value is
[{
"_id" : "....",
"name" : "aaaa",
"level_max_leaves" : [
{
level : "ObjectIdString 1",
max_leaves : 4,
},
{
level : "ObjectIdString 2",
max_leaves : 6,
}
]
},
{
"_id" : "....",
"name" : "bbbb",
"level_max_leaves" : [
{
level : "ObjectIdString 1",
max_leaves : 4,
},
{
level : "ObjectIdString 4",
max_leaves : 3,
}
]
}]
How I filter the level_max_leaves
of level
has ObjectIdString 1
value.
I need only the matching level
values as ObjectIdString 1
, like this
[{
"_id" : "....",
"name" : "aaaa",
"level_max_leaves" : [
{
level : "ObjectIdString 1",
max_leaves : 4,
}
]
},
{
"_id" : "....",
"name" : "bbbb",
"level_max_leaves" : [
{
level : "ObjectIdString 1",
max_leaves : 4,
}
]
}]
So far, I tried
MyModel.find(
{ 'level_max_leaves.level' : 'ObjectIdString 1'},
null, null,
function(err, results){
console.log(results);
});
This will return all the document row which has ObjectIdString 1
. Also included with other sub ordinate document in an array.
But I need only the select and filtered object value when its matching.