我有这样MongoDB中的文档 -如何限制它具有阵列MongoDB的文档查询的结果
{
name: "Myname",
Auth: "myAuth",
Books:[{
b_name: "bookname",
b_type: "tech",
datetime: "datetime"
}],
dept: "IT"
}
现在,如果我只是想根据过滤条件来获得name字段中,我可以查询像 -
db.books.find({ dept: "IT" } , { Myname:1, Auth:1, _id:0 })
但是,如果我想获得一个单一的领域,以及在阵列"Books"
数组字段中的一个,我该如何查询MongoDB
。
我想是这样 -
db.books.find({ dept: "IT" } , { Myname:1, Auth:1, Books.b_name:1, _id:0 })
上面的查询将无法正常工作。
这就是你想要的数目进行限制的问题数组元素返回?或者在查询中有语法错误?如果您的问题是前者,请使用['$ slice'](http://docs.mongodb.org/manual/reference/operator/projection/slice/) – numbers1311407
@ numbers1311407 $ slice只在数组中的位置相关**是已知**否则推荐使用投影和* match *运算符。 –