SQL vs MQL
SQL : select * from table;
MQL : db.collection.find({});
-- 몽고쉘 접속
# mongosh "mongodb+srv://cluster0.eumcwhs.mongodb.net/myFirstDatabase" --apiVersion 1 --username mungyu83
# show dbs
# use test
# db.employees.insertOne({
name: "lake",
age: 21,
dept: "Database",
joinDate: new ISODate("2022-10-01"),
salary: 400000,
bonus: null
})
# db.employees.find()
[
{
_id: ObjectId("6439fd519595f6c390dd9fdc"),
name: 'lake',
age: 21,
dept: 'Database',
joinDate: ISODate("2022-10-01T00:00:00.000Z"),
salary: 400000,
bonus: null
}
]
# db.employees.insertMany([
{
name: "ocean",
age: 45,
dept: "Network",
joinDate: new ISODate("1999-11-15"),
salary: 100000,
resignationDate: new ISODate("2002-12-23"),
bonus: null
},
{
name: "river",
age: 34,
dept: "DevOps",
isNegotiating: true
}
])
# var docs = [];
# for(i = 0; i < 300; i++) {
docs.push({a: i})
}
# db.insertTest.insertMany(docs);
# db.insertTest.find()
[
{ _id: ObjectId("6439ff279595f6c390dd9fdf"), a: 0 },
{ _id: ObjectId("6439ff279595f6c390dd9fe0"), a: 1 },
{ _id: ObjectId("6439ff279595f6c390dd9fe1"), a: 2 },
{ _id: ObjectId("6439ff279595f6c390dd9fe2"), a: 3 },
{ _id: ObjectId("6439ff279595f6c390dd9fe3"), a: 4 },
{ _id: ObjectId("6439ff279595f6c390dd9fe4"), a: 5 },
...
]
# db.employees.updateOne(
{ name: "river" },
{
$set: {
salary: 350000,
dept: "Database",
joinDate: new ISODate("2022-12-31")
},
$unset: {
isNegotiating: ""
}
}
)
# db.employees.find()
...
{
_id: ObjectId("6439fe4b9595f6c390dd9fde"),
name: 'river',
age: 34,
dept: 'Database',
joinDate: ISODate("2022-12-31T00:00:00.000Z"),
salary: 350000
}
# db.employees.updateMany(
{ resignationDate: { $exists: false }, joinDate: { $exists: true }},
{ $mul: {salary: Decimal128("1.1")} }
)
# db.employees.find()
[
{
_id: ObjectId("6439fd519595f6c390dd9fdc"),
name: 'lake',
age: 21,
dept: 'Database',
joinDate: ISODate("2022-10-01T00:00:00.000Z"),
salary: Decimal128("440000.0"),
bonus: null
},
{
_id: ObjectId("6439fe4b9595f6c390dd9fdd"),
name: 'ocean',
age: 45,
dept: 'Network',
joinDate: ISODate("1999-11-15T00:00:00.000Z"),
salary: 100000,
resignationDate: ISODate("2002-12-23T00:00:00.000Z"),
bonus: null
},
{
_id: ObjectId("6439fe4b9595f6c390dd9fde"),
name: 'river',
age: 34,
dept: 'Database',
joinDate: ISODate("2022-12-31T00:00:00.000Z"),
salary: Decimal128("385000.0")
}
]