MongoDB查询条件包括SUM

MongoDB查询条件包括SUM,mongodb,mongodb-query,aggregation-framework,Mongodb,Mongodb Query,Aggregation Framework,如何使用mongo编写此sql查询 select * from a where b + c < 5? 从a中选择*,其中b+c

如何使用mongo编写此sql查询

select * from a where b + c < 5?
从a中选择*,其中b+c<5?
的操作员是您的最佳选择:

db.collection.aggregate([
{“$redact”:{
“$cond”:{
“如果”:{“$lt”:[{“$add”:[“$b”,“$c”]},5]},
“然后”:“$$KEEP”,
“else”:“$$PRUNE”
}
}},
{“$project”:{“_id”:0,“a”:1}
])
通过对的数学表达式设置逻辑条件,以确定要保留哪些项

选择字段

另一种方法是使用JavaScript评估。由于所需的JavaScript翻译(以下是
$where
)的shell快捷方式),因此效果不佳:

db.collection.find(
函数(){
返回值(此.b+此.c)<5;
},
{u id:0,a:1}
);
或:

db.collection.find(
{“$where”:“return(this.b+this.c)<5;”,
{u id:0,a:1}
);
这基本上是一样的


本机运算符的性能比JavaScript评估更高。

搜索引擎是您的朋友:您还需要观看StackOverflow的“自动标记”功能。交叉发布到“sql”和“nosql”标签不会为您赢得朋友。