8.删除文档

删除文档

remove()方法

功能:默认情况下删除所有符合条件的文档
格式:

db.<collection>.remove(删除条件)

假如,我们现在想删除id为D001的数据,那么代码如下:

db.stus.remove({_id:"D001"})

如果我们只想删除一个,那么加入第二个参数:justOne:true:

db.<collection>.remove(删除条件,true)

现在我们有两唐僧,我们想删掉一个,则代码如下:

db.stus.remove({name:"唐僧"},true)

如果想要删除所有的信息,那么可以使用 db.stus.remore({})
当然了,这种删除方法性能比较差。
还有一种比较高效的做法:

db.<collection>.drop()

直接删除一个集合
比如,我们把stus删掉,那么使用代码

db.stus.drop()

注意:如果所有集合都被删除,那么数据库也会被删除。
然后下面,我们介绍一下怎么一次性删除一个数据库:

db.dropDatabase()

直接use使用某个数据库,然后使用db.dropDatabase即可。比如我们删了我们的test数据库,那么代码如下:

use test;
db.dropDatabase();

但是我们一般不会直接删除数据,我们会给每个文档多加一列判断该文档要不要。
直接贴代码显示:

use test;
db.stus.insert([
    {name:"唐僧",age:18,isDel:0},
    {name:"孙悟空",age:18,isDel:0},
    {name:"猪八戒",age:18,isDel:0},
    {name:"沙和尚",age:18,isDel:0}
]);
db.stus.find();

查询结果如下:
在这里插入图片描述
假如现在唐僧被吃了,我们要把他去掉,那么我们就把她的isDel改为1,代码如下:

db.stus.updateOne(
    {
        name:"唐僧"
    },
    {
    	$set:
        {
            isDel:1
        }
    }
);
db.stus.find({isDel:0});

查询结果如下:
在这里插入图片描述

deleteOne()方法

功能:删除一个符合条件的文档
格式跟remore差不多,这里直接贴代码,假如我们要删除一个金角大王信息,那么代码如下:

db.stus.deleteOne(
    {name:"金角大王"}    
)

查询结果如下:
在这里插入图片描述

deleteMany()方法

功能:删除所有符合条件的文档
格式跟remore差不多,这里直接贴代码,假如我们要删除所有银角大王信息,那么代码如下:

db.stus.deleteMany(
    {name:"银角大王"}    
)

查询结果如下:
在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值