Ich habe eine Sammlung von Produkten. Jedes Produkt enthält eine Reihe von Elementen.So finden Sie Dokumente und einzelne Filialdokumente, die bestimmten Kriterien in der MongoDB-Sammlung entsprechen
> db.products.find().pretty()
{
"_id" : ObjectId("54023e8bcef998273f36041d"),
"shop" : "shop1",
"name" : "product1",
"items" : [
{
"date" : "01.02.2100",
"purchasePrice" : 1,
"sellingPrice" : 10,
"count" : 15
},
{
"date" : "31.08.2014",
"purchasePrice" : 10,
"sellingPrice" : 1,
"count" : 5
}
]
}
So können Sie bitte geben Sie mir einen Rat, wie ich MongoDB abfragen können alle Produkte mit nur einzelne Element abzurufen, das Datum auf das Datum ist gleich I als Parameter abzufragen geben.
Das Ergebnis für "2014.08.31" muss sein:
{
"_id" : ObjectId("54023e8bcef998273f36041d"),
"shop" : "shop1",
"name" : "product1",
"items" : [
{
"date" : "31.08.2014",
"purchasePrice" : 10,
"sellingPrice" : 1,
"count" : 5
}
]
}
Verwenden Sie '$ filter' ab 3.2. Mehr hier https://stackoverflow.com/questions/3985214/retrieve-only-the-queried-element-in-an-object-array-in-mongodb-collection – Veeram