Skip to content

Cheat Sheet pentru comenzi MongoDB

MongoDB este un sistem de bază de date cu sursă deschisă bazat pe stocarea distribuită a fișierelor și este una dintre cele mai populare baze de date NoSQL de astăzi. Acest cheat sheet se concentrează pe operațiunile comune în CLI mongosh.

Conexiune și Gestionare

Comanda Descriere
mongosh Conectează-te la MongoDB pe portul local
use <db_name> Comută sau creează baza de date
db Arată baza de date curentă
show dbs Listează toate bazele de date
show collections Listează toate colecțiile
exit Ieși din Shell

Operațiuni pe Colecții (DDL)

Comanda Descriere
db.createCollection("users") Creează manual o colecție
db.users.drop() Șterge colecția specificată
db.users.stats() Vezi statisticile colecției
db.users.renameCollection("people") Schimbă numele colecției

Operațiuni pe Documente (CRUD)

Insert

// Inserează documente
db.users.insertOne({ name: "Alice", age: 25 });
db.users.insertMany([{ name: "Bob" }, { name: "Charlie" }]);

Read

// Interoghează documente
db.users.find().pretty(); 
db.users.find({ age: { $gt: 20 } }).sort({ age: 1 }).limit(10); 
db.users.findOne({ name: "Alice" }); 

Update

// Actualizează documente
db.users.updateOne({ name: "Alice" }, { $set: { age: 26 } });
db.users.updateMany({ age: { $lt: 18 } }, { $set: { status: "minor" } });

Delete

// Șterge documente
db.users.deleteOne({ _id: ObjectId("...") });
db.users.deleteMany({ status: "inactive" });

Operatori comuni

Type Operator Descriere
Comparație $gt, $gte, $lt, $lte, $ne Mai mare decât, Mai mare sau egal, Mai mic decât, Mai mic sau egal, Diferit de
Logic $and, $or, $not, $nor Și, Sau, Nu, Nici
Câmp $set, $unset, $inc, $rename Setează valoare, Elimină câmpul, Actualizare incrementală, Redenumește câmpul
Array $push, $pop, $pull, $addToSet Adaugă, Pop, Elimină potrivirile, Adaugă unic

Pipeline de agregare

db.orders.aggregate([
  { $match: { status: "A" } },
  { $group: { _id: "$cust_id", total: { $sum: "$amount" } } },
  { $sort: { total: -1 } }
]);

Gestionarea indexurilor

Comanda Descriere
db.users.createIndex({ name: 1 }) Creează index ascendent
db.users.createIndex({ email: 1 }, { unique: true }) Creează index unic
db.users.getIndexes() Arată toate indexurile
db.users.dropIndex("name_1") Șterge indexul