MongoDB——文档操作(删除文档)

一、使用 remove 删除文档

1.1、使用 remove 删除文档的概述

  • remove 命令需要配合查询条件使用。
  • 匹配查询条件的文档会被删除。
  • 指定一个空文档条件会删除所有文档。

1.2、限定只删除一个文档的命令格式

  • remove命令会删除匹配条件的全部文档,如果希望明确限定只删除一个文档,则需要指定justOne参数,命令格式如下:

    db.collection.remove(query,justOne)
    

1.3、删除首条记录的命令格式

  • 删除满足某个条件的首条记录,则需要指定true参数,命令格式如下:

    db.books.remove(query,true)
    

1.4、使用 remove 删除文档的示例

  • 删除age等于20的记录

    db.user.remove({age:28})
    
  • 删除age 小于25的记录

    db.user.remove({age:{$lt:25}})
    
  • 删除所有记录

    db.user.remove( { } ) 
    
  • 执行下面命令直接报错

    db.user.remove()
    

二、使用 delete 删除文档

  • 官方推荐使用 deleteOne() 和 deleteMany() 方法删除文档,语法格式如下:

    语法格式描述
    db.books.deleteMany ({})删除集合下全部文档
    db.books.deleteMany ({ type:“novel” })删除 type等于 novel 的全部文档
    db.books.deleteOne ({ type:“novel” })删除 type等于novel 的一个文档
  • 注意: remove、deleteMany等命令需要对查询范围内的文档逐个删除,如果希望删除整个集合,则使用drop命令会更加高效

三、返回被删除文档

  • remove、deleteOne等命令在删除文档后只会返回确认性的信息,如果希望获得被删除的文档,则可以使用findOneAndDelete命令。

    db.books.findOneAndDelete({type:"novel"})
    

    在这里插入图片描述

  • 除了在结果中返回删除文档,findOneAndDelete命令还允许定义“删除的顺序”,即按照指定顺序删除找到的第一个文档。

    db.books.findOneAndDelete({type:"novel"},{sort:{favCount:1}})
    

    在这里插入图片描述

  • remove、deleteOne等命令只能按默认顺序删除,利用这个特性,findOneAndDelete可以实现队列的先进先出。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

小志的博客

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

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

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

打赏作者

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

抵扣说明:

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

余额充值