我有一個名為“產品”的 MongoDB 集合名稱,其中包含以下檔案:
{productName: "ABC", category: "cat1"}
{productName: "DEF", category: "cat2"}
{productName: "GHI", category: "cat3"}
{productName: "JKL", category: "cat1"}
{productName: "MNO", category: "cat2"}
{productName: "PQR", category: "cat3"}
我想按類別顯示產品。這是我想要的輸出:
[
{_id: {category: 'cat1'}, {products: [{productName: "ABC"}, {productName: "JKL"}]}},
{_id: {category: 'cat2'}, {products: [{productName: "DEF"}, {productName: "MNO"}]}},
{_id: {category: 'cat3'}, {products: [{productName: "GHI"}, {productName: "PQR"}]}}
]
我已經撰寫了按類別對主題進行分組的查詢。這是代碼:
db.products.aggregate([
{$group: {_id: {category: "$category"}}}
])
如何解決我的問題?
uj5u.com熱心網友回復:
你的方法$group很好$category。您只需要在階段中使用聚合運算子。
使用$push,您可以創建一個串列products
[
{
$group: {
_id: "$category",
products: {
$push: {
"productName": "$productName"
}
}
}
}
]
在這里試試
轉載請註明出處,本文鏈接:https://www.uj5u.com/caozuo/435819.html
