前言
数据更新是我们日常操作数据库必不可少的一部分,下面这篇文章就给大家分享了操作MongoDB数据更新的一些干货,对大家具有一定的参考学习价值,一起来学习学习吧。
常用的函数
update(,,,) ,其中表示筛选的条件,是要更新的数据
updateMany() 更新所有匹配到的数据
upsert
upsert是一个布尔类型的数据,如果为true时,当根据query条件没有找到匹配的数据时,就表示插入此条数据,如果为false就表示不插入数据
下面将会在一个空的集合中更新数据
//就会插入此条数据,因为没有找到匹配的信息
db.user.update({'name':'chenjiabing','age':22,'sex':"Man"},{$set:{'hobby':'read'}},{'upsert':true});
db.user.update({'name':'chenjiabing','age':22,'sex':"Man"},{$set:{'hobby':'read'}},true); //和上面的语句等价
//输出 db.user.find()
{ "_id" : ObjectId("59067b70856d5893a687655f"), "age" : 22, "name" : "chenjiabing", "sex" : "Man", "hobby" : "read" }
multi
如果这个参数为true,就把按条件查出来多条记录全部更新。默认为false,如果为true的话和updateMany()一样的效果
下面将会更新所有匹配到的数据
db.user.update({name:'chenjiabing'},{$set:{'hobby':'code'}},{'multi':true});
字段更新操作符 Field Update Operators
$set
$set用来指定一个键的值。如果这个键不存在,则创建它。注意这里的更新默认是只更新第一条匹配到的数据ÿ