Python MongoDB第二章

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.")

Python MongoDB 删除集合

删除集合

您可以使用 drop() 方法删除在 MongoDB 中调用的表或集合。

实例

删除 "customers" 集合:

import pymongo

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

mycol.drop()

如果成功删除集合,则 drop() 方法返回 true,如果集合不存在则返回 false。

Python MongoDB 更新

更新集合

您可以使用 update_one() 方法来更新 MongoDB 中调用的记录或文档。

update_one() 方法的第一个参数是 query 对象,用于定义要更新的文档。

注释:如果查询找到多个记录,则仅更新第一个匹配项。

第二个参数是定义文档新值的对象。

实例

把地址 "Valley 345" 改为 "Canyon 123":

import pymongo

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

myquery = { "address": "Valley 345" }
newvalues = { "$set": { "address": "Canyon 123" } }

mycol.update_one(myquery, newvalues)

#print "customers" after the update:
for x in mycol.find():
  print(x)

更新多个

如需更新符合查询条件的所有文档,请使用 update_many() 方法。

实例

更新地址以字母 "S" 开头的所有文档:

import pymongo

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

myquery = { "address": { "$regex": "^S" } }
newvalues = { "$set": { "name": "Minnie" } }

x = mycol.update_many(myquery, newvalues)

print(x.modified_count, "documents updated.")

Python MongoDB Limit

限定结果

要限制 MongoDB 中的结果,我们使用 limit() 方法。

limit() 方法接受一个参数,定义的数字表示返回的文档数。

假设你有一个 "customers" 集合:

Customers

{'_id': 1, 'name': 'John', 'address': 'Highway37'}
{'_id': 2, 'name': 'Peter', 'address': 'Lowstreet 27'}
{'_id': 3, 'name': 'Amy', 'address': 'Apple st 652'}
{'_id': 4, 'name': 'Hannah', 'address': 'Mountain 21'}
{'_id': 5, 'name': 'Michael', 'address': 'Valley 345'}
{'_id': 6, 'name': 'Sandy', 'address': 'Ocean blvd 2'}
{'_id': 7, 'name': 'Betty', 'address': 'Green Grass 1'}
{'_id': 8, 'name': 'Richard', 'address': 'Sky st 331'}
{'_id': 9, 'name': 'Susan', 'address': 'One way 98'}
{'_id': 10, 'name': 'Vicky', 'address': 'Yellow Garden 2'}
{'_id': 11, 'name': 'Ben', 'address': 'Park Lane 38'}
{'_id': 12, 'name': 'William', 'address': 'Central st 954'}
{'_id': 13, 'name': 'Chuck', 'address': 'Main Road 989'}
{'_id': 14, 'name': 'Viola', 'address': 'Sideway 1633'}

实例

把结果限定为只返回 5 个文档:

import pymongo

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

myresult = mycol.find().limit(5)

# 打印结果:
for x in myresult:
  print(x)

Python是一种流行的编程语言,而MongoDB是一种非关系型数据库。本文将介绍如何使用Python与MongoDB进行交互,并提供一些常见的操作示例。

首先,我们需要安装Python和MongoDB,并确保它们都已正确配置。然后,我们可以使用Python的pymongo库来连接和操作MongoDB数据库。

连接到MongoDB数据库非常简单。我们只需要使用pymongo库中的MongoClient类创建一个连接对象,然后指定要连接的数据库的URL和端口号。例如,以下代码将连接到本地的默认MongoDB实例:

from pymongo import MongoClient

# 创建连接对象
client = MongoClient('mongodb://localhost:27017/')

# 连接到数据库
db = client['mydatabase']

现在,我们可以开始对数据库进行各种操作。以下是一些常见的MongoDB操作示例:

  1. 插入数据:
# 获取集合对象
collection = db['mycollection']

# 插入一条数据
data = {'name': 'John', 'age': 30}
collection.insert_one(data)

 2查询数据:

# 查询单个文档
result = collection.find_one({'name': 'John'})
print(result)

# 查询多个文档
results = collection.find({'age': {'$gt': 25}})
for result in results:
    print(result)

3;更新数据:

# 更新一条文档
collection.update_one({'name': 'John'}, {'$set': {'age': 31}})

# 更新多条文档
collection.update_many({'age': {'$gt': 30}}, {'$inc': {'age': 1}})

4.删除数据:

# 删除一条文档
collection.delete_one({'name': 'John'})

# 删除多条文档
collection.delete_many({'age': {'$gt': 30}})

除了上述操作外,MongoDB还支持索引、聚合操作和地理空间查询等高级功能。我们可以通过pymongo库来实现这些功能。

当今世界,数据是无处不在的。无论是个人使用的智能手机、社交媒体平台上的信息、企业的销售数据,还是科学研究中的实验结果,数据都扮演着重要的角色。然而,随着数据规模的不断增长,我们需要一种高效的方式来存储、管理和分析这些数据。这就是为什么越来越多的人选择使用MongoDB作为他们的数据库解决方案。

MongoDB是一种开源的非关系型数据库,它以其灵活性和可扩展性而闻名。与传统的关系型数据库不同,MongoDB使用文档的概念来存储数据。文档是一种类似于JSON的数据结构,可以包含各种类型的数据,例如字符串、数字、日期和数组。这种灵活性使得MongoDB非常适合存储半结构化和非结构化数据。

使用Python操作MongoDB非常简单。首先,我们需要安装Python的MongoDB驱动程序,称为PyMongo。可以使用pip命令来安装它:

pip install pymongo

安装完成后,我们可以使用以下代码连接到MongoDB数据库:

from pymongo import MongoClient

# 连接到MongoDB数据库
client = MongoClient('mongodb://localhost:27017/')

# 获取数据库
db = client['mydatabase']

除了基本的插入、查询和更新操作,MongoDB还支持许多高级功能,例如索引、聚合管道和复制集。这些功能可以帮助我们更好地组织和分析数据。

总的来说,Python与MongoDB的结合为我们提供了一个强大的工具来处理各种数据。无论是个人项目还是企业级应用,MongoDB都是一个值得考虑的选择。希望本文能够帮助你了解并开始使用Python与MongoDB!

  • 2
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

梦幻编织者

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值