MongoDB合并文档
Posted
技术标签:
【中文标题】MongoDB合并文档【英文标题】:MongoDB merging documents 【发布时间】:2019-03-21 19:29:48 【问题描述】:我的收藏有以下形式:
"_id" : ObjectId("5bc5dec478f5e2032d37e7c2"), "" : 1, "C_ID" : 1, "I_ID" : 7503672, "TIMESTAMP" : "2018-03-12"
"_id" : ObjectId("4bc5dec478f5e2032e37e7c2"), "" : 1, "C_ID" : 1, "I_ID" : 6003672, "TIMESTAMP" : "2018-03-12"
"_id" : ObjectId("2bc5dec478frgsg32d37e7c2"), "" : 1, "C_ID" : 1, "I_ID" : 9003672, "TIMESTAMP" : "2017-03-12"
我想合并集合以获得这个:
"_id" : ObjectId("8bc5dec478f5e2032d37e7c2"), "" : 1, "C_ID" : 1, "I_ID" : [7503672, 6003672], "TIMESTAMP" : "2018-03-12"
"_id" : ObjectId("2bc5dec478frgsg32d37e7c2"), "" : 1, "C_ID" : 1, "I_ID" : 9003672, "TIMESTAMP" : "2017-03-12"
直到现在我尝试使用 $mergeObjects 命令但没有成功。
【问题讨论】:
我通过使用解决了这个问题:db.test.categories.aggregate([ "$group": "_id": "C_ID": "$C_ID","TIMESTAMP": "$TIMESTAMP","I_ID":"$addToSet":"$I_ID"])
【参考方案1】:
另外,是否有任何查询可以提供以下输出:
"_id" : ObjectId("2bc5dec478frgsg32d37e7c2"), "" : 1, "C_ID" : 1, "DATE": ["TIMESTAMP" : "2017-03-12", "I_ID" : 9003672, "TIMESTAMP" : "2018-03-12", "I_ID" : [7503672, 6003672]]
【讨论】:
以上是关于MongoDB合并文档的主要内容,如果未能解决你的问题,请参考以下文章