Files
2022-11-22 18:28:29 +05:00

62 lines
2.8 KiB
Plaintext

CHECKOUT_DATABASE:
show dbs - show all dbs
set some_name_db - set current db
show collections - all collections of current db
db.stats() - stats of DB
db.users.stats() - some stats
ADD_DATA:
insertOne() - insert document to collection
insertMany()
EXAMPLE:
db.collection_name.insertOne({"name":"Tom", "age": 28, languages: ["english":"spanish"]})
db.collection_name.insertMany([{"name": "Bob", "age": 26, languages: ["english", "french"]},
{"name": "Alice", "age": 31, languages:["german", "english"]}])
WITH_FILE: example.js AND CONTENT
db.users.insertMany([
{"name": "Alice", "age": 31, languages: ["english", "french"]},
{"name": "Lene", "age": 29, languages: ["english", "spanish"]},
{"name": "Kate", "age": 30, languages: ["german", "russian"]}
])
load("example.js") - this command will load previous example in db
DOCUMENT_FILTER:
db.collection_name.find() - show all documents in colleciton
EXAMPLES:
db.collection_name.find({name: "Tom"}) - find documents with names
db.collection_name.find({name: "Tom", age: 32}) - find documents with name and age
db.collection_name.find({name: "Tom", languages: null}) - find documents with name Tom and languages undefined
db.collection_name.find({languages: ["english", "german"]}) - find documents with language english and german
db.collection_name.find({"languages.0": "english"}) - find documents with language english on first place and english
db.collection_name.find({name: "Tom"}, {age: 1}) - find only with name Tom and return only age
db.collection_name.find({name: "Tom"}, {age: 0}) - find only with name Tom and return everything but not age
db.collection_name.find({name: "Tom"}, {age: true, _id: false}) - find with name tom and return with age but not id
db.collection_name.find({}, {age: 1, _id: 0}) - find everything and show no id and only age
db.collection_name.insertOne({"name": "Alex", "age": 28, company: {"name":"Microsoft", "country":"USA"}})
db.collection_name.find({"company.name": "Microsoft"})
SORT_AND_PAGINATION:
db.users.find().limit(3) - get only 3
db.users.find().skip(3) - get all but skip first 3
db.users.find().skip(3).limit(3) - skip 3 and get next 3
SORT:
db.users.find().sort({name: 1}) - sort (1 up) (-1 down)
SLICE: its combination of limit+skip (have two forms) slice(limit) slice(limit, skip)
db.users.insertOne({"name": "Tom", "age": 32, languages: ["english", "german", "spanish"]})
db.users.find ({name: "Tom"}, {languages: {$slice : 1}})
db.users.find ({name: "Tom"}, {languages: {$slice : -1}})
db.users.find ({name: "Tom"}, {languages: {$slice : [-2, 1]}})
COLLECTION_CHANGES:
db.createCollection("accounts")
db.users.renameCollection("new_name")
db.createCollection("profiles", {capped:true, size:9500})
db.createCollection("profiles", {capped:true, size:9500, max: 150})