现在有如下的数据
> db.one.find(); { "_id" : ObjectId("62513012f4a74899d0aa416e"), "name" : "Oner" } { "_id" : ObjectId("625130b1f4a74899d0aa416f"), "name" : "zero", "age" : 20 } { "_id" : ObjectId("625130f9f4a74899d0aa4170"), "name" : "second", "age" : 20 }
删除文档有两种方法:deleteOne和deleteMany两种方法:
> db.one.deleteOne({"_id":ObjectId("62513012f4a74899d0aa416e")}) ##删除第一条数据
这种删除只能匹配一个文档,因为"_id"的值在集合中是唯一的,然而,也可以指定一个与集合中多个文档匹配的筛选条件。在这种情况下,deleteOne将删除满足条件的第一个文档
而deleteMany是可以删除满足筛选条件的所有文档。
删除某个集合
db.集合名.drop(); ##这个类似于mysql中删除某种表
对了这里也可以使用remove删除文档
- remove 命令需要配合查询条件使用;
- 匹配查询条件的文档会被删;
- 指定一个空文档条件会删除所有文档
示例:
db.testcol.remove({a:1}) //删除a等于1的记录
db.testcol.remove({a:{$lt:5}}) //删除a小于5的记录
db.testcol.remove({}) //删除所有记录
db.testcol.remove() //这种一般会报错