我有這樣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 *運算符。 –