假设有如下集合:
db.test.insert([{"f1":100,"f2":150},{"f1":120,"f2":541},{"f1":125,"f2":140}])
Run Code Online (Sandbox Code Playgroud)
如何创建类似的查询 mongodb
Select count(*) from test where (f2-f1)<100
Run Code Online (Sandbox Code Playgroud)
我做了一些尝试,但没有奏效:
db.test.aggregate([{ $match: {} }, { $project: { _id : 0,name : 1, r1: {$subtract:["$f2", "$f1"]} }}])
Run Code Online (Sandbox Code Playgroud)
首先使用$project计算值创建结果集。然后用于$match过滤掉那些与您的条件不匹配的值。
db.test.aggregate(
{ $project: { _id : 0,
name : 1,
difference: {$subtract:["$f2", "$f1"]}
}
},
{ $match: { difference: { $lt: 100 }
}
})
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1366 次 |
| 最近记录: |