반응형
728x90
반응형
들어가기전
MongoDB Altas Free 버전을 셋팅하자.
https://devfunny.tistory.com/850
database 생성
_MONGOSH 에 명령어를 입력해보자.
1) database 'test' 생성
use test
▶ 아직까지는 새로고침을 해도 test 데이터베이스가 보이지 않는다. 몽고DB는 해당 데이터베이스에 데이터가 INSERT 되어야 보인다.
데이터 등록
1) 데이터 INSERT
db.users.insertOne({ name : "seohae", email : "seohae@test.com"})
▶ 데이터를 1개 INSERT 해보니, 'test' 데이터베이스가 노출된다.
{
"_id": {
"$oid": "62f847a6e0a2d7c40aed2736"
},
"name": "seohae",
"email": "seohae@test.com"
}
2) 데이터 INSERT (객체)
db.users.insertOne({ name : { first : "Kim", last: "Seohae" }, email : "kimseohae@test.com"})
▶ 데이터가 추가되었다.
몽고DB는 Json 객체를 저장한다.
{
"_id": {
"$oid": "62f84822e0a2d7c40aed2737"
},
"name": {
"first": "Kim",
"last": "Seohae"
},
"email": "kimseohae@test.com"
}
몽고DB 구조에서는 생성된 데이터 user 2명을 documnet라고 한다.
데이터 조회
1) 데이터 리스트 조회
db.users.find()
2) 데이터 단건 조회
db.users.findOne({ "name.first" : "KIM" })
데이터 수정
1) 데이터 수정 (신규 key 추가)
updateOne( {어떤 ID의 데이터를 수정할 것인가?}, {어떤 데이터로 수정할 것인가?} )
db.users.updateOne({ name : 'seohae' }, {$set : { age : 27 }});
▶ age 가 추가된걸 확인할 수 있다.
db.users.findOne({ name : "seohae" })
2) 데이터 수정 (이미 존재하는 key의 value 수정)
db.users.updateOne({ "name.first" : "Kim" }, {$set : { "name.first" : "KIM" }});
▶ name.first 가 "KIM"으로 변경되었다.
db.users.findOne({ "name.first" : "KIM" })
3) 데이터 탐색에 ObjectId를 사용해보자.
db.users.findOne({ _id : ObjectId("62f84822e0a2d7c40aed2737") })
4) 위 6)에서 ObjectId로 찾은 데이터를 변경해보자. (age를 -1 해보자.)
db.users.updateOne({ _id : ObjectId("62f84822e0a2d7c40aed2737") }, { $inc : {age : -1}})
▶ age 가 27에서 26으로 변경되었다.
db.users.findOne({ _id : ObjectId("62f84822e0a2d7c40aed2737") })
데이터 삭제
1) 데이터를 삭제해보자.
db.users.deleteOne({_id : ObjectId("62f847a6e0a2d7c40aed2736")})
▶ 데이터 2건 중, 1건이 삭제되어 1건만 존재한다.
db.users.find() -- 리스트 조회
반응형
'Coding > NoSQL' 카테고리의 다른 글
[Redis 기본 개념] Redis의 자료구조와 커맨드 정리 (1) | 2023.11.23 |
---|---|
[몽고DB 완벽가이드] 샤드 키 선정 (0) | 2023.03.22 |
[몽고DB 완벽가이드] 샤딩의 구성 (0) | 2023.03.21 |
[몽고DB 완벽가이드] 샤딩의 개념 (0) | 2023.03.17 |
[MongoDB] MongoDB Altas Free버전 Compass 사용하기 (0) | 2022.08.14 |