MongoDB查询二维数组的ObjectId



我有一个集合名为MongoDB的教师与一些文档,这里是一个例子:

{
"_id" : ObjectId("63a89cdae570d47034c996ec"),  
"teachingCategories" : [ 
[ 
ObjectId("63a40c7e54351f6071b25abd"), 
ObjectId("63a65195075c0031b1bd2e81")
], 
[ 
ObjectId("63a40b4654351f6071b25a82"), 
ObjectId("63a41d5d54351f6071b25acf"), 
ObjectId("63a44bdc54351f6071b25b9a")
], 
[ 
ObjectId("63a40c7e54351f6071b25abd"), 
ObjectId("63a651d6075c0031b1bd2e87")
]
]

}

我正在寻找类别id如下的教师

db.collection("teachers").find({ teachingCategories: ObjectId("63a44bdc54351f6071b25b9a") })

但是mongodb没有返回任何

由于teachingCategories在您的文档中是arraysarray中您可以尝试这样做

db.teachers.find({
teachingCategories: {
$elemMatch: {
$elemMatch: {
$in: [ObjectId("63a44bdc54351f6071b25b9a")]
}
}
}
})

类似于在MongoDB中查询数组的数组

相关内容

  • 没有找到相关文章

最新更新