MongoDB 数据删除操作

本文介绍MongoDB集合的删除操作,提供了db.collection.deleteOne()、db.collection.deleteMany()等方法,还说明了各方法参数。给出删除集合文档的示例,同时提到Mongodb的repairDatabase()可整理磁盘碎片、回收空间,但使用时需做好备份,修复时其他操作将受限。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

MongoDB 删除文档

前面的几个章节中我们已经学习了MongoDB中如何为集合添加数据和更新数据。在本章节中我们将继续学习MongoDB集合的删除。

在 MongoDB 中提供了如下几个方法:

  • db.collection.deleteOne(): 删除一行数据
  • db.collection.deleteMany() : 删除多行数据
  • db.collection.remove() : 删除数据(官方已经不推荐使用)

详细说明

// 语法
db.collection.deleteOne(
   <filter>,
   {
      writeConcern: <document>,
      collation: <document>
   }
)

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

参数说明:

示例

删除集合中所有的文档。

db.products.deleteMany({});

删除集合中 instock 值为 true 的所有文档

db.products.deleteMany({instock : true });

删除集合中 instock 值为 true 的一个文档

db.products.deleteOne({instock : true });

 Mongodb中的repairDatabase()

repairDatabase 用来整理磁盘碎片,以及回收磁盘空间。 remove() 方法 并不会真正释放空间。db.repairDatabase() 来回收磁盘空间。

当使用repairDatabase 命令或者在shell命令中运行db.repairDatabase() 或者mongod –repair的过程中,清除的破损文件将不可恢复。Repair过程中,其他所有操作都无法执行,直到修复完成。

 语法

> db.repairDatabase()
# 或者
> db.runCommand({ repairDatabase: 1 })

这个命令,在官方的文档中也有提到,使用之前 最好做好备份 https://docs.mongodb.com/manual/reference/command/repairDatabase/index.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Wayfreem

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值