在嵌套数组mongodb nodejs中查找对象



假设我需要在"shows"(数组(中获取一个特定的文档,该文档位于数组"screens"中的一个对象中,如何在我的NodeJS项目中使用MongoDB聚合来获得这个特定的节目???

这是我的剧院收藏。

"_id" : ObjectId("5fdd148e3a850f2980fc79b6"), 
"theaterUser" : ObjectId("5fd237ad0279894d60045fd3"), 
**>>>>** "screens" : [
{
"ScreenName" : "Ad 1", 
"Seats" : " 64", 
"_id" : ObjectId("5fdd148e3a850f2980fc79b5"), 
**>>>>** "shows" : [
{
"MovieName" : "Guppy",                           *
"Screen" : "Ad 1",                              *
"Date" : ISODate("2020-12-12T00:00:00.000+0000"),* 
"time" : "13:30",                                *Get this One
"VIP" : "400",                                   *
"Premium" : "320",                               *
"Executive" : "170"                              * 
}
]
}, 

}```

您可以使用elematch进行此查询,也可以使用mongodb聚合进行自定义查询在$elemMatch的情况下,您可以尝试以下操作:

screens:{$elemMatch:{shows:$elemMatch:{MovieName:'Guppy'}}}

你可以试试";elemMatch";嵌套数组的关键字

最新更新