query an array of objects in mongodb code example
Example 1: how to get array object value in mongodb
db.products.aggregate([
{$unwind: "$ratings"},
{$match: {'ratings.user': ObjectId("5f6e2e0b70eb0208fc8401a1")}}
])
Example 2: how to get array object value in mongodb
db.test.aggregate([
{$match: {'shapes.color': 'red'}},
{$project: {
shapes: {$filter: {
input: '$shapes',
as: 'shape',
cond: {$eq: ['$$shape.color', 'red']}
}},
_id: 0
}}
])
Example 3: how to query array of object in mongoos
User.findOne({'local.rooms': {$elemMatch: {name: req.body.username}}}, function (err, user) {
if (err){
return done(err);
}
if (user) {
console.log("ROOM NAME FOUND");
req.roomNameAlreadyInUse = true;
next();
} else {
req.roomNameAlreadyInUse = false;
console.log("ROOM NAME NOT FOUND");
next();
}
});