Skip to content

MongoDB

Shell

mongosh

Database

show databases
use <db_name>
# Drops the current database
db.dropDatabase()

Collection

show collections
db.createCollection("<collection_name>")
db.createCollection("<collection_name>", {capped: true, size: 10000000, max: 100, autoIndexId: false})
db.<collection_name>.drop()

Document

# or findOne()
db.<collection_name>.find().pretty()
db.<collection_name>.find({<query_field>: <value>}).sort({<sort_field>: 1}).limit(<limit_size: 3>)
db.<collection_name>.find(
    {"<query_field>.<child_query_field>": <value>},
    {<include_field>: 1, <exclude_field>: 0}
).pretty()
db.<collection_name>.insertOne({<field1: name>: <value1: "Patrick">, <field2: age>: <value2: 30>})
db.<collection_name>.insertMany([
    {<field1: name>: <value1: "Patrick">, <field2: age>: <value2: 30>},
    {<field1: name>: <value1: "Sandy">, <field2: age>: <value2: 27>},
])
db.<collection_name>.insertOne(
    {
        name: "Larry",
        age: 32,
        GPA: 2.8,
        "full time": false,
        "register date": new Date(),
        "graduation date": null,
        courses: ["biology", "chemistry", "calculus"],
        address: {
            street: "one two three fake street",
            city: "Bikini Bottom",
            "zip code": "one two three four five"
        }
    }
)
# or updateMany
db.<collection_name>.updateOne({<query_field>: <value>}, {$set: {<update_field>: <value>}})
# or deleteMany
db.<collection_name>.deleteOne({<query_field>: <value>})

Operators

db.<collection_name>.find({<query_field>: {$ne: <value>}})
db.<collection_name>.find({<query_field>: {$lt: <value>}})
db.<collection_name>.find({<query_field>: {$lte: <value>}})
db.<collection_name>.find({<query_field>: {$gt: <value>}})
db.<collection_name>.find({<query_field>: {$gte: <value>}})
db.<collection_name>.find({<query_field>: {$gte: <value: 3>, $lte: <value: 4>}})
db.<collection_name>.find({<query_field>: {$in: [<value1>, <value2>, <value3>] } })
db.<collection_name>.find({<query_field>: {$nin: [<value1>, <value2>, <value3>] } })
db.<collection_name>.find({$and: [{<query_field1>: <value1>}, {<query_field2>: <value2>}]})
db.<collection_name>.find({$or: [{<query_field1>: <value1>}, {<query_field2>: <value2>}]})
db.<collection_name>.find({$nor: [{<query_field1>: <value1>}, {<query_field2>: <value2>}]})

Index

db.<collection_name>.getIndexes()
db.<collection_name>.createIndex({<field>: 1})
db.<collection_name>.dropIndex("<index_name>")
db.<collection_name>.find({<query_field>: <value>}).explain("executionStats")