mongoDB的基本操作之数据更新多条数据

Posted Zina

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了mongoDB的基本操作之数据更新多条数据相关的知识,希望对你有一定的参考价值。

在默认情况下,update会更新第一条找到的数据,我们做个实验,插入3条c为1的数据
db.test_collection.insert({c:1})
然后我们find的一下
db.test_collection.find({c:1})
得到的结果是
{ "_id" : ObjectId("5b5e3f7da2b4848fd8c49dbf"), "c" : 1 }
{ "_id" : ObjectId("5b5e3f7fa2b4848fd8c49dc0"), "c" : 1 }
{ "_id" : ObjectId("5b5e3f7fa2b4848fd8c49dc1"), "c" : 1 }
说明已经插入成功了

 

我们用update的将c为1的数据更新为c为2的数据
db.test_collection.update({c:1},{c:2})
我们再次查找c为1的数据
db.test_collection.find({c:1})
发现还有两条

 

我们查找c为2的数据
db.test_collection.find({c:2})
发现只有一条

 

mongodb这样设计,是为了防止不小心的update误操作
db.test_collection.update({c:1},{$set:{c:2}},false,true)
第2个set是部分操作,第3个参数表示如果不存在,是否新创建,第4个参数表示是否更新多条数据,我们再来查找c为2的数据
db.test_collection.find({c:2})
发现有3条

以上是关于mongoDB的基本操作之数据更新多条数据的主要内容,如果未能解决你的问题,请参考以下文章

java操作mongodb——更新数据

mongodb的基本操作之更新不存在的数据

整理一些MongoDB常用数据库命令

整理一些MongoDB常用数据库命令

MongoDB 之 幽灵操作避免

MySql中使用INSERT INTO语句更新多条数据的例子