MongoDB刪除文檔

在本章中,我們將學習如何刪除 MongoDB 集合中的文檔。

remove()方法

MongoDB中的 remove()方法用於從集合中刪除文檔。 remove()方法接受兩個參數。 一個是刪除條件,第二個是標誌:justOne

  • criteria - (可選)符合刪除條件的集合將被刪除。
  • justOne - (可選)如果設置爲true1,則只刪除一個文檔。

語法

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()
>