MST

星途 面试题库

面试题:Python操作MongoDB大数据集合之数据筛选

假设MongoDB中有一个大数据集合,包含大量商品信息文档,每个文档有'name'(商品名称)、'price'(价格)和'stock'(库存)等字段。请使用Python的pymongo库,编写代码筛选出价格大于100且库存大于50的商品信息,并以列表形式返回。
18.3万 热度难度
编程语言Python

知识考点

AI 面试

面试题答案

一键面试
from pymongo import MongoClient


def get_products():
    client = MongoClient('mongodb://localhost:27017/')
    db = client['your_database']
    collection = db['your_collection']

    result = list(collection.find(
        {"price": {"$gt": 100}, "stock": {"$gt": 50}},
        {"_id": 0}
    ))
    return result


你可以使用以下方式调用函数:

if __name__ == "__main__":
    products = get_products()
    print(products)

在上述代码中:

  1. 首先通过MongoClient连接到本地的MongoDB服务。
  2. 然后选择指定的数据库和集合。
  3. 使用find方法进行查询,筛选出price大于100且stock大于50的文档,并通过{"_id": 0}不返回_id字段。
  4. 最后将查询结果转换为列表返回。在if __name__ == "__main__":块中调用函数并打印结果。你需要将'your_database''your_collection'替换为实际的数据库名和集合名。