我正在尝试查询我的本地MongoDB以获取字段X大于字段Y的值N的文档(在本例中为值N = 0.25)。
我目前有:
db.getCollection('collection1').find({ $expr: { $gt: [ "$field1" , "$field2" ] }}).sort({"dateAdded" : -1})
但这只返回字段 1 大于字段 2 的结果。我需要字段 1 大于字段 2 0.25。
我在任何地方的文档中都找不到这个,我确定我错过了一些简单的东西......
感谢您的帮助。
创建一个表达式,该表达式首先计算差值,然后可以执行大于比较。
以这个查询为例,它使用 $subtract
运算符来获取差异:
db.getCollection('collection1').find(
{ "$expr": {
"$gt": [
{ "$subtract": ["$field1", "$field2"] },
0.25
]
}}
).sort({"dateAdded" : -1})