MongoDB-CRUD
생성하기(Insert)
새로운 문서를 생성합니다.
- insert: 단일 또는 다수의 문서를 입력할 때 사용
- insertOne: 단일 문서를 입력할 때 사용
- insertMany: 다수의 문서를 입력할 때 사용
1
2
3
4
5
6
7
8
9
10
11
/*
생성하기(Insert)
1. insert: 단일 또는 다수의 문서를 입력할 때 사용
2. insertOne: 단일 문서를 입력할 때 사용
3. insertMany: 다수의 문서를 입력할 때 사용
*/
//Document 생성
Hwang = {"name":"JeongYong","description":"Programmer","openDate":new Date()}
//Programmer Collection 생성 후
//Hwang 문서 Programmer Collection에 추가
db.programmer.insert(Hwang)
조회하기(find)
기존 문서를 조회합니다.
- find: 모든 문서 조회
- findOne: 하나의 문서 조회
- find(query): query조건에 맞는 문서 조회
1
2
3
4
5
6
7
8
9
/*
조회하기(find)
1. find(): 모든 문서 조회
2. findOne(): 하나의 문서 조회
3. find(query): query조건에 맞는 문서 조회
*/
db.programmer.find()
query = {"name": "JeongYong"}
db.programmer.find(query)
결과 - Insert한 Data 조회
갱신하기(Update)
기존 문서를 수정합니다.
- 기본적인 방법: Method의 첫번째 인자는 갱신하려는 문서를 찾고, 두번째 인자는 치환할 새로운 문서의 내용이다.
1
2
3
4
5
6
7
8
9
10
11
12
13
/*
갱신하기(Update)
update는 기존의 문서를 수정하는 것
Method의 첫번째 인자는 갱신하려는 문서를 찾고, 두번째는 치환할 새로운 문서이다.
*/
//갱신하려는 문서의 조건
query1 = {"name": "JeongYong"}
//갱신하려는 문서내용
query2 = {"name": "JeongYong2"}
//update 진행
db.programmer.update(query1,query2)
//결과 확인
db.programmer.find()
결과:
- 조건을 걸어서 Update하기
$set | 해당 키의 값만 갱신 |
$inc | 해당 키의 값을 증가 또는 감소 |
$push | 지정된 키가 존재하면 배열의 끝에 추가하고, 없으면 새로운 배열을 만들어 추가 |
$addToSet | 배열 내에 같은 값이 존재하지 않는 경우에만 추가 |
$pop | 배열의 요소를 제거 {key:1}인 경우는 배열의 끝에서, {key:-1}인 경우 배열의 처음 요소를 제거 |
$pull | 주어진 조건에 일치하는 배열의 요소를 제거 |
1
2
3
4
5
6
//조건을 걸어서 Update하기
db.programmer.insert(Hwang)
query3 = {"name": "JeongYong2"}
query4 = {$set: {"name": "JeongYong3"}}
db.programmer.update(query3,query4)
db.programmer.find()
결과:
- 조건에 맞지 않는 문서가 발견되면 쿼리 문서와 갱신문서를 합친 새로운 문서 입력, 3번째 인자를 True로 한다.
1
2
3
4
5
6
//조건에 맞지 않는 문서가 발견되면 쿼리 문서와 갱신문서를 합친 새로운 문서 입력
//3번째 인자를True로 한다.
query5 = {"name": "JeongYong4"}
query6 = {$set: {"name": "JeongYong5"}}
db.programmer.update(query5,query6,true)
db.programmer.find()
결과:
- 다중 문서 갱신, 4번째 인자를 True로 한다.
1
2
3
4
5
6
7
8
//다중 문서 갱신 : 4번째 인자를 true로 세팅한다.
db.programmer.insert({"name":"JeongYong3"})
db.programmer.insert({"name":"JeongYong3"})
db.programmer.insert({"name":"JeongYong3"})
query7 = {"name": "JeongYong3"}
query8 = {$set: {"name": "JeongYong6"}}
db.programmer.update(query7,query8,false,true)
db.programmer.find()
결과:
삭제하기(remove)
- 부분 삭제하기: 조건 O
- 모두 삭제하기: 조건 X
1
2
3
4
5
6
7
8
9
10
11
12
/*
삭제하기(remove)
1. 부분삭제하기: 조건O
2. 모두 삭제하기: 조건X
*/
//부분 삭제하기
query9 = {"name": "JeongYong5"}
db.programmer.remove(query9)
db.programmer.find()
//모두 삭제하기
db.programmer.remove({})
db.programmer.find()
결과 - 부분 삭제하기:
결과 - 모두 삭제하기:
_id: Mongo에서 RDBMS의 PK와 같은 역할을 한다. Document생성시 자동으로 배정받고 Document끼리 중복되지 않는 값 이다.
참조: 원본코드
코드에 문제가 있거나 궁금한 점이 있으면 wjddyd66@naver.com으로 Mail을 남겨주세요.
Leave a comment