下面的集合看起来像一个普通的Rdbms表,因此为了获得Json和mongodb的优势,我想从一种形式转换为另一种形式。
我是MongoDB的新手。
[{
"ccp": 1,
"period": 1,
"sales": 100,
"units": 50
},
{
"ccp": 1,
"period": 2,
"sales": 200,
"units": 50
},
{
"ccp": 2,
"period": 1,
"sales": 100,
"units": 50
},
{
"ccp": 2,
"period": 2,
"sales": 200,
"units": 50
}
]我想把上面的收藏转换成下面的格式
[{
"ccp": 1,
"periods": [{
"period": 1,
"sales": 100,
"units": 50
},
{
"period": 2,
"sales": 200,
"units": 50
}
]
},
{
"ccp": 2,
"periods": [{
"period": 1,
"sales": 100,
"units": 50
},
{
"period": 2,
"sales": 200,
"units": 50
}
]
}
]发布于 2018-04-19 13:25:00
可能不是有效的方法,但这就是使用mongodb的聚合框架来实现这一目标的方法。
db.collection.aggregate([
{$group : {_id : "$ccp",
periods : {$push : {period : "$period", sales : "$sales", units : "$units" }}}},
{$project : { periods : 1, "ccp" : "$_id" , _id : 0 }}
])https://stackoverflow.com/questions/49920218
复制相似问题