mongodb的update总结,我们这里主要是总结一下有关mongodb的修改update操作,这个也是我们长期开发和使用mongodb的一大操作。
1:让某个字段自增
db.c.update({id:1},{$inc:{id:1}})
2:为某个表增加字段 age
db.c.update({id:3},{$set:{age:2}})
3:删除某行的某列
db.c.update({id:2},{$unset:{age:1}})
4:删除某个行
db.c.remove({id:2})
5:修改某个行,只修改一行
db.c.update({id:2},{$set:{name:3333}},true,false)
6:修改某个行,全部
db.c.update({id:2},{$set:{name:3333}},true,true)
7:存储数组
db.d.save({id:1,info:[1,2,3]})
8:修改增加数组数据
db.d.update({id:1},{$push:{info:5}})
9:修改时候的判断。
db.d.update({id:1,name:2},{$set:{name:22}},false,true)
false表示存在不插入,不存在就插入。
true表示修改多行的意思。
10:mongodb删除某列,使用$unset命令
db.d.update({},{$unset:{name:1}},true,true)
11:mongodb修改多个字段 update test0 set test1='test1',test2='test2'
db.test0.update( { "_id" : 15 } , { $set : { "test1" : "testv1","test2" : "testv2","test3" : "testv3","test4" : "testv4" } } );
12:mongodb保存数组,而且向数组中推送数据
db.be.save({id:1,name:[1,2,3]})
db.be.update({id:1},{$push:{name:5}})
13:向mongodb中插入多个数组数据
db.a.update({id:1},{$pushall:{info:[7,8,9]}})
14:一次向mongodb中插入多个数组
db.a.update({id:1},{$addToSet:{info:['1','2']}})
15:将一个mongodb数据数组出栈
db.a.update({id:1},{$pop:{info:-1}})
db.a.update({id:1},{$pop:{info:1}})
注意,只能删除一个值,也就是说只能用1或-1,而不能用2或-2来删除两条。mongodb 1.1及以后的版本才可以
16:从数组field内删除一个等于value值。例:
db.a.update({id:1},{$pull:{info:2}})
17:删除数组中多个值{ $pullAll : { field : value_array } }
同$pull,可以一次删除数组内的多个值。db.test0.update( { "_id" : 15 } , { $pullAll : { "test1": [ "ccc" , "fff" ] } } );