首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >MongoDB:从特定文档检索整个数组

MongoDB:从特定文档检索整个数组
EN

Stack Overflow用户
提问于 2016-07-29 18:51:04
回答 3查看 991关注 0票数 0

我在mongoDB中设置了一些测试数据,其形式如下:

代码语言:javascript
复制
{ 
    "_id" : ObjectId("579ab44c0f9f0dc3aeec42ab"), 
    "name" : "Bob", 
    "references" : [ 1, 2, 3, 4, 5, 6 ]
}

{ 
    "_id" : ObjectId("579ab7a20f9f0dc3aeec42ac"), 
    "name" : "Jeff", 
    "references" : [ 11, 12, 13, 14, 15 ]
}

我希望能够只为Bob返回引用数组。目前,我可以通过以下查询返回Bob的完整文档:

代码语言:javascript
复制
  db.test_2.find({"name" : "Bob"}, bob).pretty()

基本上,一般问题是如何在MongoDB中为集合中的单个文档返回数组?如果我能得到任何帮助,这将是非常感谢!

EN

回答 3

Stack Overflow用户

发布于 2016-07-29 19:38:28

您可以添加一个投影文档来限制返回的字段。

例如: db.products.find( { qty:{ $gt: 25 },{ item: 1,qty: 1})

查看文档:https://docs.mongodb.com/manual/reference/method/db.collection.find/#db.collection.find

另一种选择是从给定的文档中选择字段(例如,在循环中使用它)。

在任何情况下,mongo都会返回一个json文档,您需要从该文档中获取数组。

问候乔尼

票数 2
EN

Stack Overflow用户

发布于 2019-09-11 10:52:00

你能做到的..。

代码语言:javascript
复制
db.test_2.findOne({ "name": "Bob" }).select({ references: 1, _id: 1 })

这是与MongoDB v4.2有关的

票数 0
EN

Stack Overflow用户

发布于 2017-03-31 10:18:38

db.test_2.find({“名称”:"Bob“},{”引用“:1 });

票数 -1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/38665717

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档