【发布时间】:2014-02-20 14:44:54
【问题描述】:
我的文档如下所示:
{ "entity_id" : 2,
"features" :
[
{ "10" : "name" },
{ "20" : "description" },
... ,
{ "90" : "availability" }
]
}
我想知道两件事:"entity_id" (2) 的值,以及 "features" 数组的元素之一中的属性值,以便仅检索子文档
{ "20" : "description" }
在一个查询中。非常感谢!
【问题讨论】:
-
.find({'features.20':{$exists:true}})
-
这将给出整个文档。我只想要属性为 20 的元素文档
-
@portforwardpodcast 您是否试图指出“mongodb 中的任何查询始终返回根文档”,如链接中问题的答案所述?如果是这样,另一个答案指出这个限制在 2.2.x 中消失了
-
聚合框架改变了您当前可以做的事情的性质,并且不能很好地替代仅返回文档的一部分。由于它旨在“聚合”,因此您会发现一般用法对于非聚合类型的查询很麻烦。
标签: mongodb subdocument