我有产品集合。每个产品都包含一系列项目。如何在MongoDB集合中找到与给定标准匹配的文档和单个子文档
> 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
}
]
}
所以,可以请你给我一个建议,我怎么能MongoDB的查询检索与该日期是等于我通过查询作为参数的日期只有单个项目的所有产品。
为 “2014年8月31日” 的结果必然是:
{
"_id" : ObjectId("54023e8bcef998273f36041d"),
"shop" : "shop1",
"name" : "product1",
"items" : [
{
"date" : "31.08.2014",
"purchasePrice" : 10,
"sellingPrice" : 1,
"count" : 5
}
]
}
从3.2开始使用'$ filter'。更多在这里https://stackoverflow.com/questions/3985214/retrieve-only-the-queried-element-in-an-object-array-in-mongodb-collection – Veeram 2017-12-13 19:47:49