在 Python 中使用 PyMongo 执行 MongoDB 聚合操作
PyMongo 是 Python 中使用 MongoDB 的第三方库,可以方便地进行 MongoDB 的 CRUD 操作,包括聚合操作。以下是一个示例代码,使用 PyMongo 执行 MongoDB 聚合操作:
from pymongo import MongoClient # 连接 MongoDB 数据库 client = MongoClient('mongodb://localhost:27017/') db = client['test_db'] collection = db['test_collection'] # 执行聚合操作 pipeline = [ {"$match": {"name": "皮蛋编程"}}, {"$group": {"_id": "$age", "count": {"$sum": 1}}} ] result = collection.aggregate(pipeline) # 输出结果 for r in result: print(r)
以上代码中,首先连接 MongoDB 数据库,然后指定要进行聚合操作的集合(collection)。聚合操作使用 MongoDB 的聚合管道(pipeline)进行,每个聚合操作都会生成一个文档,这些文档按照管道中指定的顺序传递。在本例中,聚合管道包含两个操作:
1. $match
: 匹配指定条件的文档,这里是匹配 name 为“皮蛋编程”的文档。
2. $group
: 按照指定的字段进行分组,这里是按照 age 字段分组,并统计每组文档的数量。
执行聚合操作后,会返回一个聚合结果迭代器(cursor),可以使用循环输出结果。
总之,PyMongo 提供了丰富的聚合操作函数,可以根据具体需求进行灵活选择。
相关文章