Sky*_*ker 17 javascript mongoose mongodb node.js
我试图通过使用mongoose过滤器从我的mongoDB数据库中获取数据.场景是数据库中的每个用户对象都有某些字段,如"Region"或"Sector".
目前我正在获取包含关键字"region"的所有用户,如下所示:
// Filter all healthcare bios by region
app.get('/user',function(req, res) {
// use mongoose to get all users in the database
User.find({region: "NA"}, function(err, user)
{
// if there is an error retrieving, send the error. nothing after res.send(err) will execute
if (err)
{
res.send(err);
}
// return all todos in JSON format
console.log(user);
res.json(user);
});
});
Run Code Online (Sandbox Code Playgroud)
如何在mongoose中放置一些条件,它返回在对象中包含"region"&&"Sector"的用户.目前它只返回其中包含region关键字的用户.
我尝试过使用$和运算符,但我无法使用它.
Vis*_*hnu 49
app.get('/user',function(req, res) {
User.find({region: "NA",sector:"Some Sector"}, function(err, user)
{
if (err)
{
res.send(err);
}
console.log(user);
res.json(user);
});
});
Run Code Online (Sandbox Code Playgroud)
如果您想要任何区域的数据:"NA"或扇区:"某个扇区".你可以使用$or运营商.
User.find({$or:[{region: "NA"},{sector:"Some Sector"}]}, function(err, user)
{
if (err)
{
res.send(err);
}
console.log(user);
res.json(user);
});
Run Code Online (Sandbox Code Playgroud)
如果您想要同时包含任何区域或扇区的结果,那么您需要在您的以下查询User.find:
{region: {$exists:true},sector: {$exists:true}}
,$and只要您要搜索其他字段,就等于。
小智 8
const dateBetweenDates = await Model.find({
$or: [
{
$and: [
{ From: { $gte: DateFrom } },
{ To: { $lte: DateTo } },
], // and operator body finishes
},
{ _id: req.user.id},
], //Or operator body finishes
})
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
55484 次 |
| 最近记录: |