问题遇到的现象和发生背景
一对多查询,筛选出满足条件的字表信息,怎么过滤呐,使用下面的语句字表class的master中含有不是“飞飞11”的信息,也查询出来了,哪位帮忙看看
问题相关代码,请勿粘贴截图
getCollection('student').aggregate([
{
$match: {
name: "小明"
}
},
{
$lookup: {
from: "class",
localField: "id",
foreignField: "stuid",
as: "student_class"
}
},
{
$match: {
"student_class.master": "飞飞11"
}
}
])
运行结果及报错内容
// 1
我的解答思路和尝试过的方法
测试数据,
我想要达到的结果
{
"_id": ObjectId("62ab3b2dba34000010002f25"),
"id": "1",
"name": "小明",
"age": NumberInt("12"),
"sex": "男",
"course": [
"数学",
"语文",
"英语"
],
"student_class": [
{
"_id": ObjectId("123123412312312300000000"),
"stuid": "1",
"name": "1001",
"master": "飞飞11"
}
]
}