关于mongoose或mongoDB的列表查询

时间:2014-10-18 09:38:17

标签: node.js mongodb mongoose

我有一个学生集合和一个类集合,该类集合有一个 studentRefs ,这是一个学生列表 ids ,但学生没有涉及班级ID 的财产。

现在,我有另一个学生ID列表,我想上课。我想知道如何查询mongoose或mongoDB中的类。 mongoose中的模式如下所示。

classSchema = Schema({
    className: String,
    studentRefs: [{type: Schema.Types.ObjectId, ref: 'students'}]
});
studentSchema = Schema({
    studentName: String
});

例如,

学生AB位于Class1
学生CD位于Class2
学生EF位于Class3 现在,我有一个ar [A, B, C]

我希望得到那个阵列中的学生班 所以,我的预期结果是[Class1, Class2]

1 个答案:

答案 0 :(得分:1)

您也可以将$in运算符用于studentRefs等数组字段。因此,假设studentIds包含要查找以下类的学生ID列表:

Class.find({studentRefs: {$in: studentIds}}, function(err, classes) { ... });