博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
MongoDB 文档的删除操作
阅读量:7056 次
发布时间:2019-06-28

本文共 1094 字,大约阅读时间需要 3 分钟。

在db中删除数据是十分危险的事,建议使用logic delete,即在doc中增加一个field:IsDeleted,将其设置为1,表示该doc在逻辑上被删除,这种workaround将delete操作转换为一个update操作,比较安全。

MongoDB使用remove删除doc,语法如下,

db.collection.remove(   
, { justOne:
, writeConcern:
})query filter={
:
, ... } {
: {
:
}, ... }

All write operations in MongoDB are atomic on the level of a single document.

1,示例

创建users collection

use testuser1={ name:"t1", age:21}user2={ name:"t2", age:22}user3={ name:"t3", age:23}db.users.insert([user1,user2,user3])

2,删除所有doc

在query filter中设置empty filter,空的doc,将所有的doc都删除。

db.users.remove({})

3,删除所有符合query filter的doc

db.users.remove({age:21})

4,只删除第一个符合query filter的doc,设置justOne 参数为true

db.users.remove({age:{$gt:21}},{justOne:true})

5,以原子操作删除所有符合query filter的doc,即在一个原子操作中奖多个doc删除

db.users.remove({age:{$gte:21},$isolated:1})

 

参考doc:

作者
出处
本文版权归作者和博客园所有,欢迎转载,但未经作者同意,必须保留此段声明,且在文章页面醒目位置显示原文连接,否则保留追究法律责任的权利。
分类:
本文转自悦光阴博客园博客,原文链接:http://www.cnblogs.com/ljhdo/p/5796766.html,如需转载请自行联系原作者
你可能感兴趣的文章
nodeJS之URL
查看>>
网络配置
查看>>
使用Laya引擎开发微信小游戏(上)
查看>>
mycat 集群
查看>>
Android ANR产生原因和解决办法
查看>>
构建LNMP平台
查看>>
iphone开发 NSURL中fileURLWithPath和URLWithString的区别
查看>>
求网站技术解决 话题敏感求私聊
查看>>
4G工业路由器要点介绍
查看>>
jmeter4.0 统计结果次数 BeanShell Sampler,Debug Sampler
查看>>
C和指针学习ing 课后习题练习ing
查看>>
别让bug跑了,通过问题理解ceph的克隆过程
查看>>
Dubbo下一站:Apache顶级项目
查看>>
我说分布式事务之最大努力通知型事务
查看>>
挖机全车无动作是什么故障原因引起的?
查看>>
监狱电视系统设计原则及应用场景
查看>>
JDK 源码阅读 :ByteBuffer
查看>>
python面试题
查看>>
vscode 使用小结
查看>>
我的友情链接
查看>>