Deb*_*ash 3 mongodb mongodb-query
我正在编写以下查询来根据两个条件检索记录。执行查询时出现错误:
> db.employee.find({age:{$lt:32}},{salary:{$lt:40000}})
Run Code Online (Sandbox Code Playgroud)
这是错误消息:
Error: error: {
"ok" : 0,
"errmsg" : "Expression $lt takes exactly 2 arguments. 1 were passed in.",
"code" : 16020,
"codeName" : "Location16020"
}
Run Code Online (Sandbox Code Playgroud)
要基于两个条件进行查找查询,您需要在同一个查询对象中执行。
请注意,您正在做:
find({obj1},{obj2}
Run Code Online (Sandbox Code Playgroud)
但 find 方法的第二个参数用于投影(文档)
所以你需要这个查询:
db.collection.find({
"age": {
"$lt": 32
},
"salary": {
"$lt": 40000
}
})
Run Code Online (Sandbox Code Playgroud)
请注意,只有一个对象具有两个字段:age和salary。
就像是find( { age:{}, salary:{}} )。
示例在这里
| 归档时间: |
|
| 查看次数: |
4690 次 |
| 最近记录: |