4.Update
语法:
db.collection.update(criteria, objNew, upsert, multi)
参数说明:
criteria: 用于设置查询条件的对象
objnew: 用于设置更新内容的对象
upsert: 如果记录已经存在,更新它,否则新增一个记录(1表示为如果条件没有匹配到任何记录,就新增记录,默认为0)
multi: 如果有多个符合条件的记录,全部更新(需要配合魔术变量$set使用)1为更新全部符合条件的记录,默认为0
注意:默认情况下,只会更新第一个符合条件的记录
例如:db.test.update({name:"user1"}, {$set:{name:"user111"}}, 0, 1);
魔术方法:
$set
语法:{$set : {field : value } }
功能:把field的值设置成value,当field不存在时,增加一个字段,类似sql的set操作,value支持所有类型
技巧:在数据表中添加一个字段
db.test.update( {}, { $se : { sex:1}}, 0, 1);
{}表示匹配所有记录
$inc
语法:{ $inc : { field : value } }
功能:把field的值加一个value
做减法操作:db.test.update( {name:"user1"}, { $inc: { score:-12}});
效果:将字段score减去12
$unset
语法:{ $unset : { field : 1} }
1表示真
功能:删除给定的字段field