Laz*_*ert 2 mongoose mongodb node.js mongodb-query
使用猫鼬。架构看起来类似于:
{
"name" : String,
"start" : Date,
"stop" : Date
}
Run Code Online (Sandbox Code Playgroud)
我想要做的是构建一个查询,即(“AND”):
另一方面, start 和 stop 可以通过,也可以不通过(任何一个)。
我所有的尝试都以某种 Mongo 错误结束:) 所以寻求帮助。
问候。
您的AND查询逻辑可以用以下两种方式之一表示:
隐式 AND 运算:
Model.find({
"name": name,
"start": {
"$or": [
{ "$exists": false },
{ "$gte": start }
]
},
"stop": {
"$or": [
{ "$exists": false },
{ "$gte": stop }
]
}
}).exec(callback);
Run Code Online (Sandbox Code Playgroud)
显式与操作:
Model.find({
"$and": [
{ "name": name },
{
"start": {
"$or": [
{ "$exists": false },
{ "$gte": start }
]
}
},
{
"stop": {
"$or": [
{ "$exists": false },
{ "$gte": stop }
]
}
}
]
}).exec(callback);
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2775 次 |
| 最近记录: |