https://en.wikipedia.org/wiki/ACID
pets == collection
show dbs;
use adaptation
db.pets.insertOne({
name:"",
type:"",
breed:"",
age:""
})
db.pets.count()
it lits
collections
db name,
db.stats();
db.pets.findOne()
db.pets.findOne({
type:"Dog"
})
if it's finds return document or return NULL
db.pets.fins({
type: "dog"
})
db.pets.insertMany([
{
name:"",
type:"",
breed:"",
age:""
},
{
name:"",
type:"",
breed:"",
age:""
},
])
db.pets.findOne({index: 1233});
db.pets.find({}).limit(5)
db.pets.find({type: "dog"}).limit(40).toArray() ;
greater than $gt $eq $gte $lt $lte
$in $i
db.pets.count({
type: "cat",
age: { $gt: 12 }
})
$nin
db.pets.find({age: { $in: [3,8]}});
select all document in the pets collection where value
either 5 or 15
https://docs.mongodb.com/manual/reference/operator/query-logical/
$and $not $nor $or
db.pets.count({
type: "bird",
$and: [{
age: {$gte: 4},
age: {$lte: 8}
}]
})
db.pets.find({
type:"Dog",
}).sort({
age: -1 // DESC
}).limit(5);
// Select specific pluck
select only name
db.pets.fins({type:dog},{name:1, _id: -1}).limits()
db.collection.updateOne(<query>,<update-data>)
db.pets.updateOne(
{
$type: "",
name: "",
breed: ""
},
{$set: {owner : ""}}
)
db.pets.updateMany(
{type: "dog"}.
{$inc: {age: 1}}
);
db.pets.updateOne(
{
type: "dog",
name: "Sudo",
breed: "Wheaten"
},
{
$set: {
type: "dog",
name: "Sudo",
breed: "Wheaten"
age: 5,
index : 44553,
owner: "Sara Drasner"
},
{
upsert : true
}
)
db.pets.deleteMany({
type: "reptile",
breed: "Havanese"
})
findOne and Delete return a result and delete
db.pets.findOneDelete(
{name: "Fido"},
{type: "reptile"}
)
series of query all at once.
db.pets.find({
name : ""
}).explain("execuationStats")
db.pets.createIndex(
{
name: 1
}
)
db.pets.getIndexes();
db.pets.createIndex({index: 1}, {unique: true})
Collection only support
one text index
db.pets.createIndex({
type: "text",
breed: "text",
name: "text"
})
db.pets.find(
{ $text: {$search: "dog havanese luna"} }
)
Top score
db.pets.fins(
{$text: {$search: "dog havanese luna"}}
).sort(
{score: {$meta: "textScore" }}
)
db.pets.aggregate([
{
$bucket: {
groupBy: "$age",
boundaries: [0, 3, 9, 15],
default: "very senior",
output: {
count: { $sum: 1 },
},
},
},
]);
db.pets.aggregate(
{
$match: {
type: "dog"
},
{
$bucket: {
groupBy: "$age",
boundaries: [0, 3, 9, 15],
default: "very senior",
output: {
count: { $sum: 1 },
},
},
},
);
db.pets.aggregate(
{
$match: {
type: "dog"
},
{
$bucket: {
groupBy: "$age",
boundaries: [0, 3, 9, 15],
default: "very senior",
output: {
count: { $sum: 1 },
},
},
$sort: {
count: -1
}
},
);