MongoDB remove() 方法是用来删除集合中的数据
在前面一章节中我们学习了如何向文档中插入数据,现在我们来学习如何在删除 MongoDB 集合
remove() 方法
MongoDB remove() 方法是用来删除集合中的数据
语法
remove() 方法语法格式如下
> db.collection.remove(
<query>,
<justOne>
)
在运行 remove() 函数前先执行 find() 命令来判断执行的条件是否正确,这是一个良好的习惯
参数说明
参数 | 说明 |
---|---|
query | 必选。删除的文档的条件 |
justOne | 可选。如果设为 true 或 1,则只删除一个文档 |
如果 MongoDB 是 2.6 版本以后的,语法格式如下
> db.collection.remove(
<query>,
{
justOne: <boolean>,
writeConcern: <document>
}
)
参数说明
参数 | 说明 |
---|---|
query | 可选。删除的文档的条件 |
justOne | 可选。如果设为 true 或 1,则只删除一个文档 |
writeConcern | 可选。抛出异常的级别 |
范例
首先我们执行 insert() 方法 3 次插入 3 条数据
> db.lession.insert({title: 'MongoDB 基础教程',
by: 'dabaicai',
favorite: 1000000
})
WriteResult({ "nInserted" : 1 })
> db.lession.insert({title: 'MongoDB 基础教程',
by: 'dabaicai',
favorite: 1000000
})
WriteResult({ "nInserted" : 1 })
> db.lession.insert({title: 'MongoDB 基础教程',
... by: 'dabaicai',
... favorite: 1000000
... })
WriteResult({ "nInserted" : 1 })
接着使用 find() 函数查询数据
> db.lession.find().pretty()
{
"_id" : ObjectId("59edadf7c3ba87608db0fe4e"),
"title" : "MongoDB 基础教程",
"by" : "dabaicai",
"favorite" : 1000000
}
{
"_id" : ObjectId("59edadf8c3ba87608db0fe4f"),
"title" : "MongoDB 基础教程",
"by" : "dabaicai",
"favorite" : 1000000
}
{
"_id" : ObjectId("59edae8ac3ba87608db0fe50"),
"title" : "MongoDB 基础教程",
"by" : "dabaicai",
"favorite" : 1000000
}
>
现在我们来移除 一 条 by 为 ‘dabaicai’ 的文档,需要设置 justOne 为 1
> db.lession.remove({'by':'dabaicai'},true)
WriteResult({ "nRemoved" : 1 }) # 删除了 1 条数据,还剩下两条
> db.lession.find()
{ "_id" : ObjectId("59edadf8c3ba87608db0fe4f"), "title" : "MongoDB 基础教程", "by" : "dabaicai", "favorite" : 1000000 }
{ "_id" : ObjectId("59edae8ac3ba87608db0fe50"), "title" : "MongoDB 基础教程", "by" : "dabaicai", "favorite" : 1000000 }
接下来我们删除剩下的两条
> db.lession.remove({'by':'dabaicai'})
WriteResult({ "nRemoved" : 2 }) # 删除了两条
> db.lession.find() # 数据库空了
>
如果想删除所有数据,可以使用以下方式
> db.lession.remove({})
最新评论
徒弟可以A师傅,学生可以A老师,为什么外包不能A正式,我觉得很正常。异性相吸这是宇宙真理
PHP天下第一(狗头叼花)
第一个不需要关注公主号直接给激活码的帖子!
客户端超时断开后,服务端如果没有设置超时机制,那也会继续等待处理,万一这期间有消息到了,那不是就接受到消息处理了,但是也没有办法返回到客户端,导致消息丢失。
企业级GO项目开发实战 Kubernetes权威指南 第六版
https://pan.baidu.com/s/1q3bnTncIACKoTZFxvx7BQw?pwd=ii7n
RabbitMQ精讲,项目驱动落地,分布式事务拔高 有吗?
Spring Cloud Alibaba 微服务架构实战 https://pan.baidu.com/s/1jF5voFRoeF0lYAzAPBWSbw?pwd=chqk