我有一种感觉,这可能是在其他地方被问过,但我很难找到答案。
基本上,我有一个MongoDB / Mongoose Schema,它存储一个注册用户列表。我正在构建一个GUI,可以查询满足特定条件的所有记录。在这种情况下,我想让GUI用户通过复选框选择他们想要包含在查询中的所有性别。
如果我只是传入一个字符串,我知道我会写如下:
User.find({"gender": gender}).exec(function(err, users){
if(err)
res.send(err);
res.json(users);
});
但是因为我可能会传递一个选项数组,是否有一个本机Mongoose函数可用于查询以下情况?
[Male]
[Male, Female, Other]
[Male, Other]
[Female]
etc.
在Mongoose中编写此查询的最佳方法是什么?
谢谢!
答案 0 :(得分:6)
您应该使用$in
运算符
var gender = [Male, Female, Other]
User.find({"gender": {$in: gender}})