MST
星途 面试题库

面试题:MongoDB中统计特定条件查询结果集数据条数的方法

假设有一个MongoDB集合名为users,文档结构包含name、age、gender等字段。请写出查询年龄大于30岁的用户数量的代码。
31.3万 热度难度
数据库MongoDB

知识考点

AI 面试

面试题答案

一键面试

在Node.js中使用mongodb模块进行查询,示例代码如下:

const { MongoClient } = require('mongodb');

async function countUsersOver30() {
    const uri = "mongodb://localhost:27017";
    const client = new MongoClient(uri);
    try {
        await client.connect();
        const database = client.db('yourDatabaseName');
        const users = database.collection('users');
        const count = await users.countDocuments({ age: { $gt: 30 } });
        return count;
    } finally {
        await client.close();
    }
}

countUsersOver30().then(count => {
    console.log(`年龄大于30岁的用户数量: ${count}`);
}).catch(console.error);

在Python中使用pymongo库进行查询,示例代码如下:

from pymongo import MongoClient

def count_users_over_30():
    client = MongoClient('mongodb://localhost:27017')
    db = client['yourDatabaseName']
    users = db['users']
    count = users.count_documents({'age': {'$gt': 30}})
    client.close()
    return count

count = count_users_over_30()
print(f"年龄大于30岁的用户数量: {count}")

如果直接在MongoDB的命令行中查询,可以使用以下命令:

db.users.countDocuments({ age: { $gt: 30 } })