MongoDB:直接从另一个集合插入嵌入式文档

时间:2017-06-06 14:59:24

标签: mongodb

我有两个系列:

// Profile
{
    _id: "12345",
    name: "max",
    country: "IT"
}

// Association
{
    _id: "43234",
    idclub: "1000",
    state: "0"
}

我想在关联时插入个人资料而不进行搜索。 在我的代码中,我搜索一个关联,但我没有那个时刻的对象个人资料,我只是有它的“id”。

是否有可能在集合A上执行某种插入?动态检索集合B的对象给出它自己的ID?

然后,这是一种反复出现的做法吗?因为我什么也找不到,这似乎不是最好的方式......

由于

1 个答案:

答案 0 :(得分:0)

Use findAndModify operator

     db.createCollection("Association"); 

     db.Association.insert({ _id : "43234", idclub:"1000",state:"0"});

     db.Association.findAndModify({ 
            query:{ _id:"43234" }, 
            update:{ $set:{ "profile":{ _id:"12345","name":"max","country":"IT" } } } 
    });

    db.Association.find();
  

{" _id" :" 43234"," idclub" :" 1000","州" :" 0","个人资料" :{" _id" :              " 12345"," name" :" max"," country" :" IT" }}