首页 > mongodb > basic > 18.MongoDB删除操作

18.MongoDB删除操作

1 MongoDB删除操作命令

db.collection.deleteMany()
db.collection.deleteOne()

2 初始化测试数据

db.inventory.insertMany( [
   { item: "journal", qty: 25, size: { h: 14, w: 21, uom: "cm" }, status: "A" },
   { item: "notebook", qty: 50, size: { h: 8.5, w: 11, uom: "in" }, status: "P" },
   { item: "paper", qty: 100, size: { h: 8.5, w: 11, uom: "in" }, status: "D" },
   { item: "planner", qty: 75, size: { h: 22.85, w: 30, uom: "cm" }, status: "D" },
   { item: "postcard", qty: 45, size: { h: 10, w: 15.25, uom: "cm" }, status: "A" },
]);

3 mongodb删除全部数据

通过db.collection.deleteMany()命令插入一个空的过滤条件{}.

以下操作可以删除inventory集合中的全部数据:

db.inventory.deleteMany({})

4 mongodb删除匹配条件的全部数据

以下操作可以删除inventory集合中符合status值为A的全部数据:

db.inventory.deleteMany({ status : "A" })

5 mongodb删除匹配条件的一条数据

以下操作可以删除inventory集合中第一条, status值为A的全部数据:

db.inventory.deleteOne( { status: "D" } )

6 mongodb删除行为

6.1 索引

删除操作不删除索引, 即使删除集合中的全部数据也不行.

6.2 原子性

删除操作是文档级的原子操作.

6.3 写回执

你可以自定义Mongodb写操作的回执等级. 详情查阅Write Concern.

7 MongoDB删除数据方法

方法名 说明
db.collection.deleteOne() 删除一条数据.MongoDB3.2新特性.
db.collection.deleteMany() 删除多条数据.MongoDB3.2新特性.
db.collection.remove() 删除一条或者全部匹配条件的数据

8 参考文章

https://docs.mongodb.com/manual/tutorial/remove-documents/

9 相关文章

MongoDB中文文档

转载请保留原文链接.