假设有如下所示的集合:
db.test.insert([{"f1":100,"f2":150},{"f1":120,"f2":541},{"f1":125,"f2":140}])
如何创建类似的查询mongodb?
Select count(*) from test where (f2-f1)<100
我做了一些尝试,但没有起作用:
db.test.aggregate([{ $match: {} }, { $project: { _id : 0,name : 1, r1: {$subtract:["$f2", "$f1"]} }}])
发布于 2014-01-24 06:37:21
首先,使用$project
创建具有计算值的结果集。然后使用$match
筛选出那些不符合条件的值。
db.test.aggregate(
{ $project: { _id : 0,
name : 1,
difference: {$subtract:["$f2", "$f1"]}
}
},
{ $match: { difference: { $lt: 100 }
}
})
https://stackoverflow.com/questions/21335086
复制