MongoDB 是一个基于分布式文件存储的数据库。由 C++ 语言编写。旨在为 WEB 应用提供可扩展的高性能数据存储解决方案。MongoDB 是一个介于关系数据库和非关系数据库之间的产品,是非关系数据库当中功能最丰富,最像关系数据库的。MongoDB 是目前最流行的 NoSQL 数据库之一,MongoDB使用了BSON(类似 JSON)这种结构来存储数据和网络数据交换。本文主要介绍Python MongoDB 删除文档(Delete Document) 。

1、删除文档(Delete Document)

要删除一个文档,我们使用 delete_one()方法。

delete_one()方法的第一个参数是一个查询对象,用于定义要删除的文档。

注意:如果查询找到多个文档,则仅删除第一个出现的文档。

例如:

删除地址为“ Mountain 21”的文档:

import pymongo

myclient = pymongo.MongoClient("mongodb://localhost:27017/")
mydb = myclient["mydatabase"]
mycol = mydb["customers"]

myquery = { "address": "Mountain 21" }

mycol.delete_one(myquery)

2、删除多个文档记录

要删除多个文档,请使用 delete_many()方法。

delete_many()方法的第一个参数是一个查询对象,用于定义要删除的文档。

例如:

删除所有address以字母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.")

3、删除集合中的所有文档记录

要删除集合中的所有文档,请将一个空的查询对象传递给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.")

推荐文档