1 update() 方法
1.1 语法
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 :可选,抛出异常的级别。
1.2 示例
修改一条:
db.col.update({'name':'小明'},{$set:{'name':'小红'}})
修改全部:
db.col.update({'name':'小明'},{$set:{'name':'小红'}},{multi:true})
备注:$set为更新操作符,参考更新操作符
2 save() 方法
save() 方法是如果存在相同ID的文档就覆盖原来文档,如果不存在,就插入新文档。具体用法参考mongodb系列教程4–插入文档
3 updateOne()方法
3.1 语法
db.collection.updateOne(query, update)
- 参数说明:
- query : update的查询条件,类似sql update查询内where后面的。
- update : update的对象和一些更新的操作符(如
, inc…)等,也可以理解为sql update查询内set后面的
3.2 示例
db.collection.updateOne({'name':'小明'},{$set:{'name':'小红'}})
4 updateMany()方法
4.1 语法
db.collection.updateMany(query, update)
-
参数说明:
- query : update的查询条件,类似sql update查询内where后面的。
- update : update的对象和一些更新的操作符(如 , <script type="math/tex" id="MathJax-Element-3">,</script>inc…)等,也可以理解为sql update查询内set后面的
4.2 示例
db.collection.updateMany({'name':'小明'},{$set:{'name':'小红'}})