MongoDB删除文档

 

db.collection.deleteOne() 删除单个文档
db.collection.deleteMany() 删除多个文档
db.collection.remove() 删除单/多个文档,
db.collection.findOneAndDelete() 删除单个文档的加强版

 

remove()方法

MongoDB中的 remove()方法用于从集合中删除文档。 remove()方法接受两个参数。 一个是删除条件,第二个是标志:justOne。
criteria - (可选)符合删除条件的集合将被删除。
justOne - (可选)如果设置为true或1,则只删除一个文档。


语法

remove()方法的基本语法如下 -

>db.COLLECTION_NAME.remove(DELLETION_CRITTERIA)


假设mycol集合具有以下数据。

> db.mycol.find({}, {'_id':1, 'title':1})
{ "_id" : 101, "title" : "MongoDB Guide" }
{ "_id" : 102, "title" : "NoSQL Database" }
{ "_id" : 104, "title" : "Python Quick Guide" }
{ "_id" : 100, "title" : "Update By Save()Method." }



以下示例将删除_id为“100”的文档。

> db.mycol.find({}, {'_id':1, 'title':1})
{ "_id" : 101, "title" : "MongoDB Guide" }
{ "_id" : 102, "title" : "NoSQL Database" }
{ "_id" : 104, "title" : "Python Quick Guide" }
{ "_id" : 100, "title" : "Update By Save()Method." }
>
> db.mycol.remove({'_id':100})
WriteResult({ "nRemoved" : 1 })
> db.mycol.find({}, {'_id':1, 'title':1})
{ "_id" : 101, "title" : "MongoDB Guide" }
{ "_id" : 102, "title" : "NoSQL Database" }
{ "_id" : 104, "title" : "Python Quick Guide" }



只删除一条文档记录

如果有多条记录,并且只想删除第一条记录,则在remove()方法中设置justOne参数。

>db.COLLECTION_NAME.remove(DELETION_CRITERIA,1)


删除所有文档记录

删除所有文档记录,可在remove()方法中设置justOne参数。

如果不指定删除条件,MongoDB 将删除集合中的所有文档。 这相当于SQL的truncate命令。

>db.mycol.remove()
>db.mycol.find()

 

删除集合以及其索引数据

可以用drop()方法:
 
>db.mycol.drop()

 

posted @ 2017-08-16 15:16  屠魔的少年  阅读(264)  评论(0)    收藏  举报