MST

星途 面试题库

面试题:Python与MongoDB复杂查询及数据处理

使用Python的pymongo库连接MongoDB数据库,数据库中有一个名为'students'的集合,每个文档包含学生的'name'(姓名)、'scores'(一个包含各科成绩的列表,例如[85, 90, 78])字段。请编写代码查询出所有学生中,某一科成绩(假设索引为1,代表第二科成绩)大于80分的学生姓名,并将这些姓名按照字母顺序排序后返回。
39.7万 热度难度
编程语言Python

知识考点

AI 面试

面试题答案

一键面试
from pymongo import MongoClient

def get_students():
    client = MongoClient('mongodb://localhost:27017/')
    db = client['your_database_name']
    students_collection = db['students']

    result = students_collection.find({
      'scores.1': {'$gt': 80}
    }, {'name': 1, '_id': 0})

    names = [student['name'] for student in result]
    sorted_names = sorted(names)

    return sorted_names