mongodb - 是否可以使用 MongoDB 查询数组中的特定对象?

标签 mongodb

假设您有一个像这样的博客集合

{"title": "帖子标题", "body": "帖子正文", "comments": [{"user": "user1", "comment": "来自 user1 的评论"}, {“user”:“user2”,“comment”:“来自user2的评论”}]} {"title": "帖子标题2", "body": "帖子正文2", "comments": [{"user": "user1", "comment": "来自user1的评论"}]}

如何查询用户的评论?

此查询有效,但返回来自 user2 和 user1 的评论。 db.posts.find({"comments.user": "user1"})

有没有办法只获取user1的评论?

最佳答案

我认为没有办法,因为 Mongo 在找到匹配项时只返回整个文档,您也许可以通过 Map/Reduce 或服务器处理来完成

关于mongodb - 是否可以使用 MongoDB 查询数组中的特定对象?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7277994/

相关文章:

mongodb - "now"和给定日期之间的差异

php - MongoDB findAndModify,在 PHP 中有一个实现吗?

javascript - 与 insertOne 函数一起使用时,MongoDB 架构不插入属性

ruby-on-rails - Rails Mongoid 无法验证 - 失败并出现错误 13 : "not authorized for query on my_db.my_collection"

node.js - 获取同时具有关注者和关注者的共同列表

mongodb - 如何创建 View 以从 mongoDB 中的两个集合中读取?

java - 尝试使用 Monger 连接到 mongo 时出现 CompilerException java.lang.ClassNotFoundException : org. bson.types

mysql - 使用 Neo4j 作为独立数据库的风险

javascript - promise 中的 promise

java - Tomcat 服务器无法通过 Servlet 连接到 MongoDB