mongodb批量更新某个字段

查询出hospitalName是xx医院和openId以2开头的全部记录,而且更新my_booking表中的payType为1.

db.getCollection('my_booking').find({"hospitalName":/xx医院/,openId:/^2/}).forEach(
   function(item){                
       db.getCollection('my_booking').update({"_id":item._id},{$set:{"payType": "1"}})
   }
)

 

查询出hospitalName是xx医院和openId不以2开头的全部记录,而且更新my_booking表中的payType为2.html

db.getCollection('my_booking').find({"hospitalName":/xx医院/,openId:{$not:/^2/}}).forEach(
   function(item){                
       db.getCollection('my_booking').update({"_id":item._id},{$set:{"payType": "2"}})
   }
)

 

查询出xx医院和不已2开头的openId的全部记录,而且将每条记录的outTradeNo2赋值给outTradeNo1.正则表达式

db.getCollection('my_booking').find({"hospitalName":/运城市中心医院/,openId:{$not:/^2/}}).forEach(
   function(item){                
       db.getCollection('my_booking').update({"_id":item._id},{$set:{"outTradeNo1": item.outTradeNo2}})
   }
)

 

楼主亲测有效!mongodb

db.getCollection('forumUser').find({"_id":NumberLong("518695")}).forEach(
   function(item){                
       db.getCollection('forumUser').update({"_id":item._id},{$set:{"screenName": "兄弟来吃辣条"}})
   }
   )数据库

 

mongodb查询数据库中某个字段中的值包含某个字符串的方法

正则表达式最能解决:post

例如:url

db.getCollection('news').find({'content':/^.*120.77.215.34:9999.*$/})

这里主要是注意正则表达式要写对,该转义的注意转义,不然报错。code