mongodb: запрос массива вложенной строки - PullRequest
0 голосов
/ 09 февраля 2019

У меня есть список объектов, похожий на

[
   { 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"] } ] }
]

Как я могу запросить список всех хранилищ, в которых «тип» содержит привет

db.inventory.find( { "instock": { $elemMatch: {type :["hello"]}}} , {_id:0})

возвращает объекты, которые имеют толькопривет.

1 Ответ

0 голосов
/ 09 февраля 2019

Точечная запись работает в этом случае, попробуйте:

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

MongoDB детская площадка

...