在本章中,我们将学习如何删除 MongoDB 集合中的文档。
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()
>