MongoDB常用命令插入更新类

来源:互联网 发布:联想网络控制器驱动 编辑:程序博客网 时间:2024/06/13 12:48



常用命令更新删除类:

1.  

2.  db.c4.update({user:"不存在"},{name:"插入"},1);如果前边数据不存在则插入后边的数据

3.  db.c4.update({name:"user1"},{name:"user1update"});如果user1存在,则修改第一条user1的数据,如果user1不存在则无影响行数。

4.  db.c1.update({name:"dingsai"},{$set:{name:"dingsai2"}});更新其中一个字段

5.  db.c1.update({name:"dingsai2"},{$set:{firstname:"ding"}});在现有数据中插入新字段。

6.  db.c4.update({name:"user33"},{$set:{name:"user3"}},true,true);更新所有user33为user3。如果user33不存在则插入user3。

7.  db.c4.update({name:"user1update"},{name:"1"},true,true);最后一个参数multi多行更新的时候必须使用{$set:”1”}

8.  db.c5.update({name:"user1"},{$set:{name:"user111"}},false,true);所有user1修改成user111。

9.  db.c5.update({name:"user111"},{$set:{age:10}},false,true);所有user111的数据插入age=18。

10. db.c5.update({},{$inc:{score:100}},false,true);在所有记录上增加score字段赋值100,如果存在score就加100,更新所有数据。$inc$set都有增加字段的功能,只不过$inc可以在现有字段(数字)上增和减。

11. db.c5.update({},{$unset:{age:true}},false,true);删除collections里所有数据的age字段。$unset删除字段;不能删除_id

12. db.c5.insert({name:"user1",arr:[1,2,3]})。db.c5.update({name:"user1"},{$push:{arr:4}})在arr数组中放入4这个值。只能放入单条,如果放入多条({$push:{arr:[5,6,7]}})则成为{"arr" : [ 1, 2, 3, 4, [ 5, 6, 7 ] ] }。$push在数组中插入单条记录。得出结论:$push--向文档的某个数组类型的键添加一个数组元素,不过滤重复的数据。添加时键存在,要求键值类型必须是数组;键不存在,则创建数组类型的键。

13. db.c5.update({name:"user1"},{$pushAll:{arr:[4,5,6]}});$pushAll和和$push功能一样,但是可以插入多条数据; [1,2 3, 4, 5,6]。可以插入重复值。

14. db.c5.update({name:"user1"},{$pop:{arr:1}});从数组尾部删除一条数据数据。{$pop:{arr:-1}}从头部删除一条数组数据。

15. db.c5.update({name:"user1"},{$addToSet:{arr:4}});向数组中插入数据,有重复数据则不插入。值出入一条不重复数据

16. db.c5.update({name:"user1"},{$addToSet:{arr:{$each:[9,10,11]}}});用$addToSet插入多条值,用$each

17. db.c5.update({name:"user1"},{$pull:{arr:11}});删除数组中值为11的数据。数组值单条删除。

18. db.c5.update({name:"user1"},{$pullAll:{arr:[2,3]}});删除数组中值为2和3的数据。数组值多条删除。

19. db.c5.update({name:"user1"},{$rename:{"oldName":"newName"}});修改字段的名字。$rename修改字段名

20. db.c5.update({"arr.tit":"java"},{$set:{"arr.$.tit":"java2"}},false,false);修改子json的一个记录。{"name" :"user1","arr" : [ { "tit" : "linux"}, {"tit" : "mysql3"}, { "tit" : "java" } ]}。修改arr.tit=java的数据为java2

21. db.c6.findOne({name:"user4"});返回结果集的第一条数据。

22. varx=db.c6.findOne({name:"user4"}); x.sex="nan";这样输出x不会影响源数据。db.c6.save(x);把修改后的X保存回原数据。





修改器更详细的说明:http://blog.csdn.net/dingsai88/article/details/43228411





















0 0
原创粉丝点击