본문 바로가기
Front-End/mongoDB

[mongoDB] 몽고DB

by 민바이민 2021. 3. 6.

document sort(정렬)

db.컬렉션명.find().sort(객체<-올림/내림차순)

 

객체

{key:value} 형태의 데이터로, key는 데이터 field 이름이고, value의 값은 1 또는 -1 입니다. 1로 설정하면 오름차순이며, -1로 설정하면 내림차순입니다. 또한 여러 key를 입력할 수 있고, 먼저 입력한 key가 우선권을 갖습니다.

 

회원가입한 순으로 내림차순(최근 가입순)으로 정렬합니다.

db.member.find().sort({"_id":-1}).pretty();

 

document 개수의 제한

limit() : 출력할 데이터 개수를 제한할 때 사용합니다.

db.컬렉션명.find().limit(출력할 개수).pretty();

 

회원가입한 순으로 내림차순으로 정렬한 뒤 3명의 멤버만 검색합니다.

db.member.find().sort({"_id":-1}).limit(3).pretty();

 

document 데이터 생략 후 출력

skip() : 출력할 데이터의 시작 부분을 설정할 경우 사용합니다.

db.컬렉션명.find().skip(생략할 개수).pretty();
db.member.find().skip(5).pretty();

 

데이터를 3개씩 나눠보기

db.member.find().limit(3).pretty();
db.member.find().skip(3).limit(3).pretty();
db.member.find().skip(6).limit(3).pretty();
...

* db.member.find().skip(x*3).limit(3).pretty();

 

 

document update(수정)

 

특정 field 업데이트

db.컬렉션명.update(변경할 객체, {$set:바뀔객체});
db.member.update({"userid":"berry"}, {$set:{"username":"배리"}});

username이 '배애리' 에서 '배리' 로 변경

 

특정 객체 변경

db.컬렉션명.update(변경할 객체, 바뀔객체);
db.member.update({"userid":"avocado"},{"userid":"avocado", "username":"안복도", "age":30, "gender":"남자"});

** 특정 필드 업데이트와 특정 객체 변경 잘 구분하여 사용해야한다.
특정 객체 변경을 사용하면 특정 데이터베이스의 항목이 날라갈 수도 있다. **

 

update를 사용한 delete(삭제)

db.컬렉션명.update(변경할 객체, {$unset:{제거할 필드:1}});    // 1은 ture라는 의미(삭제 ok!!)
db.member.update({"username":"안복도"}, {$unset:{gender:1}});    // 안복도를 찾아서 gender 필드를 삭제한다.

 

document update를 사용한 객체 추가

db.컬렉션명.update(변경할 객체, {추가할 필드, 추가할 필드...}, {upsert: true});
db.member.update({"userid":"lime"}, {"username":"라임", "age":22, "gender":"여자", "point":2000}, {upsert:true});

 

여러 document의 특정 field를 수정

db.컬렉션명.update(적용할 객체, {$set:{수정할 필드}}, {multi: true});    // 여러 개를 업데이트 하기.
db.member.update({"gender":"남자"}, {$set:{"point":1000}}, {multi:true});

 

포인트가 1000점인 멤버의 비밀번호를 "1234"로 설정합니다.

db.member.update({"point":1000},{$set:{"userpw":"1234"}}, {multi:true});

 

document remove(삭제)

db.컬렉션명.remove(객체);
db.member.remove({"username":"안복도"});

'Front-End > mongoDB' 카테고리의 다른 글

[mongoDB] 몽고DB  (0) 2021.05.22
[mongoDB] 맥북 빅서(big sur)에서 mongoDB 설치, 설정하기.  (24) 2021.03.01

댓글