首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Mongodb集合转换

Mongodb集合转换
EN

Stack Overflow用户
提问于 2018-04-19 11:41:07
回答 1查看 799关注 0票数 2

下面的集合看起来像一个普通的Rdbms表,因此为了获得Json和mongodb的优势,我想从一种形式转换为另一种形式。

我是MongoDB的新手。

代码语言:javascript
复制
[{
        "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
    }
]

我想把上面的收藏转换成下面的格式

代码语言:javascript
复制
[{
    "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
        }
    ]
}
]
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-04-19 13:25:00

可能不是有效的方法,但这就是使用mongodb的聚合框架来实现这一目标的方法。

代码语言:javascript
复制
db.collection.aggregate([
   {$group : {_id : "$ccp",
    periods : {$push : {period : "$period", sales : "$sales", units : "$units" }}}},
   {$project : { periods : 1, "ccp" : "$_id" , _id : 0 }}
  ])
票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/49920218

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档