您当前的位置: 首页 >  mongodb

小志的博客

暂无认证

  • 0浏览

    0关注

    1217博文

    0收益

  • 0浏览

    0点赞

    0打赏

    0留言

私信
关注
热门博文

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

小志的博客 发布时间:2022-04-14 23:02:51 ,浏览量:0

目录
    • 一、使用 remove 删除文档
      • 1.1、使用 remove 删除文档的概述
      • 1.2、限定只删除一个文档的命令格式
      • 1.3、删除首条记录的命令格式
      • 1.4、使用 remove 删除文档的示例
    • 二、使用 delete 删除文档
    • 三、返回被删除文档

一、使用 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可以实现队列的先进先出。

关注
打赏
1661269038
查看更多评论
立即登录/注册

微信扫码登录

0.0388s