Я новичок в Монго, я пытаюсь взять группу по значениям в поддокументе, и имеющую структуру коллекции Монго, как, как:Как группе Монго суб документ
{
"_id" : ObjectId("589d4e4b270f8b1635d400b1"),
"myShopId" : 439,
"products" : [
{
"productId" : "1234",
"productName" : "sambarpowder 500 gm",
"productCategory" : "masala",
"mrp" : "90",
"_id" : ObjectId("589d595f6da20b72fe006ea9")
},
{
"productId" : "5678",
"productName" : "moong dhal 200 gms",
"productCategory" : "dhal",
"mrp" : "38 ",
"_id" : ObjectId("589d595f6da20b72fe006eaa")
},
{
"productId" : "5678",
"productName" : "moong dhal 200 gms",
"productCategory" : "dhal",
"mrp" : "38 ",
"_id" : ObjectId("589d595f6da20b72fe006eaa")
}
],
"isAlive" : 1,
"__v" : 3
}
Здесь я хочу сделать группа в этом. для, например, в MySQL:
select productCategory from products where shopId = '439' groupby productCategory
Как я могу достичь группу, в Монго югу документа
My Expected output is like :
category : [{
productCategory : masala
_id : ObjectId("589d595f6da20b72fe006ea9")
},
{
productCategory : dhal
_id : ObjectId("589d595f6da20b72fe006eaa")
}
]
Я попытался, как этот db.shopProductDetails.group ({ "ключ": { "products.productCategory": правда }, "начальный": {}, «уменьшить ": function (obj, prev) {}, " cond ": { " shopId ":" 439 " } }); – karthik
, но я получаю пустой элемент – karthik
Этот вариант групповой команды устарел. Вместо этого используйте агрегацию '$ group'. https://docs.mongodb.com/manual/reference/operator/aggregation/group/. Для полного набора этапов трубопровода. https://docs.mongodb.com/manual/reference/operator/aggregation-pipeline/ – Veeram