在inputMongoose的数组的基础上find元素

型号是

UserSchema = new Schema({ email: String, erp_user_id:String, isActive: { type: Boolean, 'default': true }, createdAt: { type: Date, 'default': Date.now } }); module.exports = mongoose.model('User', UserSchema); 

现在我有一个string列表,[erp_user_id]的列表,我想要search所有用户在这个列表中包含erp_user_id。

就像是

 var inputArray = ['1234','324324','54345']; User.find({inputArray.contains(erp_user_id)}).exec(function(err,users){ user;// <---- list of users expected result }) 

 var inputArray = ['1234','324324','54345']; User.find({erp_user_id:{$in:inputArray}}).exec(function(err,users){ user;// <---- list of users expected result }) 

使用$ in操作符来匹配数组中的值。

$ in操作符select字段值等于指定数组中任何值的文档。 要指定$ inexpression式,请使用以下原型:

 db.collection.find({field: {$in: array}}); 

你的代码:

 var inputArray = ['1234', '324324', '54345']; User .find({ erp_user_id: { $in: inputArray } }) .exec(function(err, users) { if (err) console.log(err); console.log(users); });