MongoDB修改数据的2种方法

(编辑:jimmy 日期: 2025/4/3 浏览:2)

在MongoDB中,db.collection.ipdate()和db.collection.save()方法都可以修改集合中已存在的文档。db.collection.update()方法对修改提供额外的控制。例如,db.collectoin.update()修改已存在数据或一组匹配查询条件的文档。而db.collection.save()方法根据相同的_id替换一个已存在文档。

使用update()方法修改多个文档:

默认,update()方法更新一条满足条件的文档。调用方法时将multi选项设置为true可修改多个文档。下面的例子修改所有type字段值为“book”的文档的qty字段增加-1。例子中使用$inc,这是一个修改操作符变量。
复制代码 代码如下:
db.inventory.update(
   { type : "book" },
   { $inc : { qty : -1 } },
   { multi: true }
)

使用save()方法修改一个文档:

save()方法替换一个已存在的文档。使用save()方法替换一个文档,方法通过_id字段匹配一个已存在文档。下面的例子完全替换inventory集合中_id为10的文档:
复制代码 代码如下:
db.inventory.save(
   {
     _id: 10,
     type: "misc",
     item: "placard"
   }
)

一句话新闻
高通与谷歌联手!首款骁龙PC优化Chrome浏览器发布
高通和谷歌日前宣布,推出首次面向搭载骁龙的Windows PC的优化版Chrome浏览器。
在对骁龙X Elite参考设计的初步测试中,全新的Chrome浏览器在Speedometer 2.1基准测试中实现了显著的性能提升。
预计在2024年年中之前,搭载骁龙X Elite计算平台的PC将面世。该浏览器的提前问世,有助于骁龙PC问世就获得满血表现。
谷歌高级副总裁Hiroshi Lockheimer表示,此次与高通的合作将有助于确保Chrome用户在当前ARM兼容的PC上获得最佳的浏览体验。