📜  mongodb deleteOne (1)

📅  最后修改于: 2023-12-03 14:44:21.517000             🧑  作者: Mango

MongoDB 的删除操作 deleteOne()

简介

deleteOne() 是 MongoDB 的集合中的一种删除操作,用于删除符合条件的单个文档。

db.collection.deleteOne(
   <filter>,
   {
      writeConcern: <document>
   }
)

其中,filter 表示要删除的文档的条件,必须是一个查询文档;writeConcern 用于指定操作的写入策略,如果不指定,则使用默认策略。

使用方法
删除单个文档

使用 deleteOne() 删除集合中满足条件的第一个文档。

db.collection.deleteOne({ name: "John Doe" })

上述代码会删除集合中第一个 name 属性为 "John Doe" 的文档。

删除多个文档

deleteOne() 只能删除一个文档,如果要删除多个文档,需要进行多次操作。为了提高效率,可以使用 deleteMany() 操作。

db.collection.deleteMany({ age: { $gt: 30 } })

上述代码会删除集合中所有 age 属性大于 30 的文档。

注意事项
  1. deleteOne() 操作只会删除集合中的第一个满足条件的文档,如果要删除所有满足条件的文档,需要使用 deleteMany()
  2. 如果查询条件匹配了多个文档,deleteOne() 只会删除其中的一个,而不会产生错误;
  3. 如果查询条件不匹配任何一个文档,deleteOne() 不会产生错误,也不会删除任何文档;
  4. 如果查询条件为 null 或一个空对象 {}deleteOne() 会删除集合中的一个文档。
  5. 要小心使用删除操作,不要意外删除了重要的数据。