2017-10-19 21 views
1

Je suis tout à fait un débutant à mongodb, mon exigence est de filtrer dans le tableau des objets d'un document uniqueComment filtrer dans un tableau d'objets dans un seul document json dans mongodb?

par exemple: Voici mon document json. Je veux interroger dans les combinaisons pour trouver tout le fabricant avec la valeur "fabricant d'abc". La requête que j'ai essayé est db.Product.find({"Combinations": {$elemMatch: {"Manufacturer":"abc manufacturer"}}}). Malheureusement, il ne renvoie pas le résultat avec le fabricant abc mais tout. Mon résultat devrait être exactement semblable à la capture d'écran jointe ci-dessous. Depuis son serveur sql, Maintenant, je veux la même requête pour le même dans mongodb .. Certains experts dans le forum me jettent un peu de lumière.

Screenshot

{ "_id" : ObjectId("59e8c938ab3166800493273f"), "ProductId" : 26, "Combinations" : [ { "#Type" : "S", "Manufacturer" : "abc manufacturer", "Model Name" : "Squatting Urinal", "Size" : "475 x 365 x 105 mm", "Colour" : "White" }, { "#Type" : "S", "Manufacturer" : "abc manufacturer", "Model Name" : "Squatting", "Size" : "430 x 350 x 100 mm" }, { "#Type" : "S", "Manufacturer" : "def manufacturer", "Model Name" : "Squatting Urinal", "Size" : "440 x 355 x 102 mm", "Colour" : "White" }, { "#Type" : "S", "Manufacturer" : "xyz manufacturer", "Model Name" : "Squatting Urinal", "Size" : "440 x 355 x 102 mm", "Colour" : "Ivory" }, { "#Type" : "S", "Manufacturer" : "ghi manufacturer", "Model Name" : "Squatting Pan - 861" }, { "#Type" : "S", "Manufacturer" : "xyz manufacturer", "Model Name" : "Mateo", "Size" : "470 x 365 x 100 mm" }, { "#Type" : "S", "Manufacturer" : "xyz manufacturer", "Model Name" : "Squatting", "Size" : "340 x 435 x 100 mm", "Colour" : "White" } ] }

Répondre

0

Si je comprends ce que vous recherchez, est tout les combinaisons où le fabricant est abc. La requête que vous venez de faire vous donne tous les documents qui contient un Combinaison avec le Fabricant.

Vous devriez vérifier le aggregations pour cela.

https://docs.mongodb.com/manual/aggregation/