Вот как данные в моей базе данных mongodb.
_id:ObjectId('5c38e514b88edd0ef236c3f7'),
rooms:[
{
info:{
name:'John',
age:'23'
}
},
{
info:{
name:'Mary',
age:'15'
}
}
]
Используя структуру агрегации, я хочу сопоставить поле 'name', которое находится внутри информационного объекта, который находится в массиве rooms. Как мне этого добиться?
Что я пробовал до сих пор:
Hotel.aggregate([
{$match: {
'_id':mongoose.Types.ObjectId(lodgeId),
'rooms.info.name':'John'}}
)]
Это дает мне ВСЕ КОМНАТЫ вместо того, чтобы сопоставить одно с именем Джон.
Как получить только соответствующий ряд?