Insert
- 하나의 데이터 삽입하기
db.employees.insertOne({
name: "yuri",
age: 30,
dept: "Backend",
joinDate: new ISODate("2023-06-24"),
salary: 30000,
bonus: null
})
- 여러 개의 데이터 삽입하기 => 배열 이용
- 두 개 이상의 데이터 삽입 시 insertMany를 활용하면 좋다. => 속도가 훨씬 빠름
db.employees.insertMany([
{
name: "yuri",
age: 30,
dept: "Backend",
joinDate: new ISODate("2023-06-24"),
salary: 30000,
bonus: null
},
{
name: "may",
age: 10,
dept: "Frontend",
joinDate: new ISODate("2023-05-24"),
salary: 50000,
resignationDate: new ISODate("2023-06-24"),
bonus: null
}
])
Update
- 하나의 데이터 수정하기
db.employees.updateOne(
{ name: "may" },
{
$set: {
salary: 100000,
bonus: 500
},
$unset: {
resignationDate: "" # 필드 제거
}
}
)
- 여러 개의 데이터 수정하기
db.employees.updateMany(
{ resignationDate: {$exists: false} },
{ $mul: {salary: Decimal128("1.1")} } # salary를 10% 인상
)
* "yuri" 데이터의 resignationDate필드는 존재하지 않지만 null로 취급될 수 있으므로 주의해야 한다.
Delete
- 하나의 데이터 삭제하기
db.employees.deleteOne({name: "yuri"})
- 여러 개의 데이터 삭제하기
db.employees.deleteMany(
{ resignationDate: {$exists: false} }
)
- 전체 데이터 삭제하기
db.employees.deleteMany({}) # 중괄호를 생략하면 오류가 발생한다.
Find
- 하나의 데이터 조회하기
db.employees.findOne({ name: "may"})
- 여러 개의 데이터 조회하기
db.employees.find({
resignationDate: {$exists: false}
})
db.employees.find({
$and: [
{ resignationDate: {$exists: false} },
{ age: { $gte: 30 } }
]
})
- 전체 데이터 조회하기
db.employees.find()
컬렉션 삭제하기
db.employees.drop()
show collections # 컬렉션 조회
'공부 기록 > Database' 카테고리의 다른 글
Stored Function (0) | 2023.07.26 |
---|---|
Spring Data MongoDB 적용해보기 (0) | 2023.06.28 |
MQL, Query Filter, Operator (0) | 2023.06.24 |
MongoDB 설치하기 (0) | 2023.06.23 |
정렬, 집계 함수, 그룹핑 (0) | 2023.06.02 |