在两个集合之间映射代码值,使用其他集合更新值

时间:2018-05-23 10:48:35

标签: mongodb mgo

我有两个系列。

我使用的是MongoDB 3.4版。

集合1名为Results

集合2名为Code_Value

我必须使用result收藏集

自动更新Code_value中的代码

results就像:

{
_id: ObjectId(xxxxxxx)
name:"Mike"
job:"3"
salary:"4"
}

{
_id: ObjectId(xxxxxxx)
name:"Joe"
job:"1"
salary:"2"
}

Code_value就像:

{ 
 "Job":[ 
        {"code":"1" , "value":"IT"}
        {"code":"2" , "value":"Doctor"}
        {"code":"3" , "value":"Developer"}

      ]

 "Salary":[ 
        {"code":"1" , "value":"900000"}
        {"code":"2" , "value":"100000"}
        {"code":"3" , "value":"200000"}
        {"code":"4" , "value":"300000"}

      ]

}

我想在结果上有一个映射代码值,如下所示:

 {
 _id: ObjectId(xxxxxxx)
 name:"Mike"
 job:"Developer"
 salary:"300000"
 }

 {
_id: ObjectId(xxxxxxx)
 name:"Joe"
 job:"IT"
 salary:"100000"
 }

这是以函数

的形式进行的查询
 results.find().foreach(cursor){
 v=Code_value.find(cursor,code)
 if(v){
 results.update(job,v.value)
                               }

0 个答案:

没有答案