mongodb查询表里某字段,进行字符串截取与更新

update() 方法用于更新已存在的文档。语法格式如下:

db.collection.update(
       <query>,
       <update>,
       {
         upsert: <boolean>,
         multi: <boolean>,
         writeConcern: <document>
       }
    )

参数说明:

query : update的查询条件,类似sql update查询内where后面的。
update : update的对象和一些更新的操作符(如$,$inc...)等,也可以理解为sql update查询内set后面的
upsert : 可选,这个参数的意思是,如果不存在update的记录,是否插入objNew,true为插入,默认是false,不插入。
multi : 可选,mongodb 默认是false,只更新找到的第一条记录,如果这个参数为true,就把按条件查出来多条记录全部更新。
writeConcern :可选,抛出异常的级别。

例:
图片替换地址,先模糊查询,再替换

db.pfs_merchants.find({'logo_url': /10.2.121.170/}).forEach(function(user) {
    user.logo_url = user.logo_url.replace("10.2.121.170","10.128.3.80");
    print(user.logo_url);
    
    db.pfs_merchants.update({"_id":user._id},{$set:{"logo_url":user.logo_url}});
 })

相关推荐