rmdir.cn

db.collection.replaceOne()

替换整条文档

语法

db.collection.replaceOne(<filter>, <replacement>, <options>)

说明

替换匹配过滤条件的第一条文档的全部内容(_id 除外)。与 updateOne 不同,replaceOne 直接替换整个文档而非使用更新操作符。不能包含更新操作符如 $set。

参数

  • filter必填

    过滤条件,匹配要替换的文档

  • replacement必填

    新文档(不可含更新操作符)

  • upsert

    不存在时是否插入

示例

替换文档

替换指定用户的所有字段

db.users.replaceOne({ _id: ObjectId("...") }, { name: "新名字", email: "new@example.com", age: 30 })

upsert 替换

不存在则插入新文档

db.config.replaceOne({ _id: "app_settings" }, { theme: "dark", lang: "zh" }, { upsert: true })