【发布时间】:2020-04-28 11:36:38
【问题描述】:
我有一系列这样的产品:
[
{
productName: "productB",
productImage: "http://some.url/product_B.jpg",
productCategoryId: 34,
productPrice: 10
},
{
productName: "productA",
productImage: "http://some.url/product_A.jpg",
productCategoryId: 34,
productPrice: 50
}
]
到目前为止,我有以下内容:
db.local.aggregate(
[
{
"$match":{
"productCategoryId":34
}
},
{
"$facet":{
"byCategory":[
{
"$group":{
"_id":"productCategory",
"minprice":{
"$min":"$productPrice"
}
}
}
]
}
}
]
)
我需要按单个字段(类别)聚合/分组并获得每个类别的最低价格,但我还想返回文档的产品名称和图像(其他 2 个字段)以及每个字段的最低价格类别。任何人都可以指出一些方向或例子吗? groupBy 和 min 被覆盖,只是提取额外信息的部分。 更新了我已经拥有的架构和聚合,@PulkitAgg1010 我希望通过每个类别的 minPrice 来获取 productImage 和 productPrice 记录。
【问题讨论】:
-
productCategory字段在哪里?那是"_id":"productCategoryId"还是您从组中创建新的?
标签: mongodb mongodb-query aggregation-framework