Python MongoDB 刪除文檔

刪除文檔

要刪除一個文檔,我們使用 delete_one() 方法。

delete_one() 方法的第一個參數是 query 對象,用于定義要刪除的文檔。

注釋:如果查詢找到了多個文檔,則僅刪除第一個匹配項。

實例

刪除地址為 "Mountain 21" 的文檔:

import pymongo
myclient = pymongo.MongoClient("mongodb://localhost:27017/")
mydb = myclient["mydatabase"]
mycol = mydb["customers"]
myquery = { "address": "Mountain 21" }
mycol.delete_one(myquery)

運行實例

刪除多個文檔

要刪除多個文檔,請使用 delete_many() 方法。

delete_many() 方法的第一個參數是一個查詢對象,用于定義要刪除的文檔。

實例

刪除地址以字母 S 開頭的所有文檔:

import pymongo
myclient = pymongo.MongoClient("mongodb://localhost:27017/")
mydb = myclient["mydatabase"]
mycol = mydb["customers"]
myquery = { "address": {"$regex": "^S"} }
x = mycol.delete_many(myquery)
print(x.deleted_count, " documents deleted.")

運行實例

刪除集合中的所有文檔

要刪除集合中的所有文檔,請把空的查詢對象傳遞給 delete_many() 方法:

實例

刪除 "customers" 集合中的所有文檔:

import pymongo
myclient = pymongo.MongoClient("mongodb://localhost:27017/")
mydb = myclient["mydatabase"]
mycol = mydb["customers"]
x = mycol.delete_many({})
print(x.deleted_count, " documents deleted.")

運行實例