mongodb:嵌套字符串的查询数组

mongodb:嵌套字符串的查询数组,mongodb,mongodb-query,nested-queries,Mongodb,Mongodb Query,Nested Queries,我有一个对象列表,比如 [ { item: "journal", instock: [ { warehouse: "A", qty: 5 }, { warehouse: "C", qty: 15, type : ["hello", "world", "wassup", "yo"] } ] }, { item: "notebook", instock: [ { warehouse: "C", qty: 5 } ] }, { item: "paper", instock: [ {

我有一个对象列表,比如

[
   { item: "journal", instock: [ { warehouse: "A", qty: 5 }, { warehouse: "C", qty: 15, type : ["hello", "world", "wassup", "yo"] } ] },
   { item: "notebook", instock: [ { warehouse: "C", qty: 5 } ] },
   { item: "paper", instock: [ { warehouse: "A", qty: 60 }, { warehouse: "B", qty: 1515, type : ["hello", "wassup", "yo"] } ] },
   { item: "planner", instock: [ { warehouse: "A", qty: 40 }, { warehouse: "B", qty: 515, type : ["hello"] } ] },
   { item: "postcard", instock: [ { warehouse: "B", qty: 15 }, { warehouse: "C", qty: 3515, type : ["wassup", "yo"] } ] }
]
如何查询“type”中包含hello的所有仓库的列表

db.inventory.find( { "instock": { $elemMatch: {type :["hello"]}}} , {_id:0})
返回只有hello的对象。

在这种情况下有效,请尝试:

db.collection.find({ "instock.type": "hello"})