spring - Spring Mongodb 中的过滤器搜索查询

标签 spring mongodb

在 feed 集合中,“likeCount”和“commentCount”是两列。我想获取“likeCount”+“commentCount”大于100的所有文档。如何在Spring Mongo DB中编写搜索过滤器查询?

下面是我的示例 Feed 收集数据。

{
"_id" : ObjectId("55deb33dcb9be727e8356289"),
"channelName" : "Facebook",
"likeCount" : 2,
"commentCount" : 10,
}

为了比较单个字段,我们可以编写搜索查询,例如:

BasicDBObject searchFilter = new BasicDBObject();
searchFilter.append("likeCount", new BasicDBObject("$gte",100));

DBCursor feedCursor = mongoTemplate.getCollection("feed").find(searchFilter);

最佳答案

试试这个

db.collection.aggregate([{$project:{total:{'$add':["$likeCount","$commentCount"]}}},{$match:{total:{$gt:100 }}}])

关于spring - Spring Mongodb 中的过滤器搜索查询,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32775671/

相关文章:

java - 我可以在 Spring MVC 的拦截器中使用 RedirectAttributes 或 FlashMap

mongodb - 微服务应用程序......数据库的 Docker 卷或没有 Docker 卷?

具有 'or' 条件的 MongoDB 查询

java - 通过 Retrofit 从 Android 向 Spring 发送图像文件

java - Hibernate - 如何使用外键

java - 启动 Spring MVC 应用程序时获取 BeanDefinitionStoreException

java - Spring 4 - 无法提供静态内容( Bootstrap )

node.js - 检索与数组中最大值匹配的子文档

mongodb - IntelliJ 数据库工具 - Mongo 只读

mongodb - Ansible-Playbook 无法安装 MongoDB