Mongodb高级更新

隐身守侯 提交于 2020-01-24 17:47:16

1.数据更新命令
1.1 update
1)语法
  db.collection.update(criteria,objnew,upsert,multi)
  --注:
  1)criteria:查询条件;
  2)objnew:更新对象和更新操作符;
  3)upsert:如果不存在更新文档,是否要插入新文档,true为插入,默认为false不插入;
  4)multi:默认为false,只更新匹配的第一条记录;为true,更新所有匹配记录;
2)例子
  --更新集合clt1中域f1>1的第一个文档的域f2为test2
    db.clt1.update({f1:{$gt:1}},{$set:{f2:"test2"}});
  --更新集合clt1中域f1>1的所有文档的域f2为test2
    db.clt1.update({f1:{$gt:1}},{$set:{f2:"test2"}},false,true);
  ----更新集合clt1中域f1>5的第一个文档的域f2为test2,如没匹配文档,则插入新文档
    db.clt1.update({f1:{$gt:5}},{$set:{f2:"test2"}},true,false);
1.2 save
1)语法
  db.collection.save(obj)
  --注
  1)obj为更新或插入的文档,如collection内有匹配对象,则更新;否则,将插入该文档;
  2)该命令只能更新或插入一个文档;
2)例子
  --更新集合clt1中_id=1的文档为该文档f1和f2;否则,将插入该_id=1的文档.
  db.clt1.save({id:1,f1:5,f2:"test2"});
2.数据更新操作符
1)$inc
  --语法
  {$inc:{field:value}}
  --注
  1)为集合的数字域f

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!