我正在尝试将两个集合合并为一个集合(不加入)。我有两个具有相同集合和集合结构的数据库。
例如:

Collection test1 db1:

{
    "_id" : ObjectId("574c339b3644a65b36e77359"),
    "appName" : "App1",
    "customerId" : "Client1",
    "environment" : "PROD",
    "methods" : []
}

Collection test2 db2:

{
    "_id" : ObjectId("574c367d627b45ef0abc00e5"),
    "appName" : "App2",
    "customerId" : "Client2",
    "environment" : "PROD",
    "methods" : []
}

我正在尝试创建以下内容:
一个集合测试数据库,其中的文档将从test1和test2合并,但不能彼此合并。实现这一目标的正确方法是什么?
{
    "_id" : ObjectId("574c339b3644a65b36e77359"),
    "appName" : "App1",
    "customerId" : "Client1",
    "environment" : "PROD",
    "methods" : []
},
{
    "_id" : ObjectId("574c367d627b45ef0abc00e5"),
    "appName" : "App2",
    "customerId" : "Client2",
    "environment" : "PROD",
    "methods" : []
}

复杂的是,id在mongo的其他集合中被引用。

最佳答案

最快的方法是创建一个转储(使用mongodump)并立即恢复它们(例如使用windows路径)。

mongodump  --db test1 --collection test1  --out c:\dump\test1
mongodump  --db test2 --collection test2  --out c:\dump\test2

mongorestore  --db test3 --collection test3   c:\dump\test1
mongorestore  --db test3 --collection test3   c:\dump\test2

关于mongodb - Concat 2 mongodb系列,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/38040774/

10-13 03:38