satya
satya

Reputation: 65

How to get count of documents returned by MongoDB

I want to get count of documents returned by MongoDB.

Below is the command that returns some documents but I cannot figure out a way to count the no of documents.

db.runCommand( { 
  usersInfo: 1, 
  filter: { 
     roles: { $in: [
        { role: "root", db: "admin" },
        { role: "clusterAdmin", db: "admin" },
        { role: "clusterManager", db: "admin" },
        { role: "clusterMonitor", db: "admin" },
        { role: "hostManager", db: "admin" },
        { role: "backup", db: "admin" },
        { role: "readAnyDatabase", db: "admin" },
        { role: "readWriteAnyDatabase", db: "admin" },
        { role: "userAdminAnyDatabase", db: "admin" },
        { role: "dbAdminAnyDatabase", db: "admin" }
     ] }  
    } 
} ).users

Can someone throw some light on it.

Upvotes: 1

Views: 45

Answers (1)

R2D2
R2D2

Reputation: 10707

Since the command return an array , the easiest is to check the array length which represent the number of documents:

db.runCommand( { usersInfo: 1, filter: { roles: { $in: [{ role: "root", db: "admin" },{ role: "clusterAdmin", db: "admin" },{ role: "clusterManager", db: "admin" },{ role: "clusterMonitor", db: "admin" },{ role: "hostManager", db: "admin" },{ role: "backup", db: "admin" },{ role: "readAnyDatabase", db: "admin" },{ role: "readWriteAnyDatabase", db: "admin" },{ role: "userAdminAnyDatabase", db: "admin" },{ role: "dbAdminAnyDatabase", db: "admin" }] } } } ).users.length

Upvotes: 1

Related Questions