我有一个学生集合和一个类集合,该类集合有一个 studentRefs ,这是一个学生列表 ids ,但学生没有涉及班级ID 的财产。
现在,我有另一个学生ID列表,我想上课。我想知道如何查询mongoose或mongoDB中的类。 mongoose中的模式如下所示。
classSchema = Schema({
className: String,
studentRefs: [{type: Schema.Types.ObjectId, ref: 'students'}]
});
studentSchema = Schema({
studentName: String
});
例如,
学生A
和B
位于Class1
,
学生C
和D
位于Class2
,
学生E
和F
位于Class3
现在,我有一个ar [A, B, C]
。
我希望得到那个阵列中的学生班
所以,我的预期结果是[Class1, Class2]
。
答案 0 :(得分:1)
您也可以将$in
运算符用于studentRefs
等数组字段。因此,假设studentIds
包含要查找以下类的学生ID列表:
Class.find({studentRefs: {$in: studentIds}}, function(err, classes) { ... });