update() 方法
相关参数
- query : update的查询条件,类似sql update查询内where后面的。
- update : update的对象和一些更新的操作符(如 , , ,inc…)等,也可以理解为sql update查询内set后面的
- upsert : 可选,这个参数的意思是,如果不存在update的记录,是否插入objNew,true为插入,默认是false,不插入。
- multi : 可选,mongodb 默认是false,只更新找到的第一条记录,如果这个参数为true,就把按条件查出来多条记录全部更新。
- writeConcern :可选,抛出异常的级别。
想要正则修改多条匹配数据需要知道两点
- 想要一次修改多条数据就需要将multi 设置未true
- MongoDB 使用 $regex 操作符来设置匹配字符串的正则表达式
举个例子
db.poducts.update({'proid':{$regex:"pro.*"}} ,{$set:{'isseckill':1}},false,true)
分析
{'proid':{$regex:"pro.*"}} //update的查询条件,通过$regex 操作符来进行正则匹配,包含pro字段的数据都进行修改
{$set:{'isseckill':1}} //要修改内容
//第三个参数未false如果不存在update的记录,不插入objNew
//第四个参数设置为true才能进行对条数据修改