[Mongodb] 몽고디비 cmd

김민재·2023년 11월 1일

mongodb

목록 보기
1/8
post-thumbnail

CMD창에서 mongo 검색(5버전 미만은 mongo) 그 이상은 mongosh

help 명령어 뭐 있는지 보여준다.

BSON

  • Mongo는 이진법으로 저장을 한다.

명령어

  • show dbs 데이터베이스 보여준다
  • use db db라는 데이터베이스를 만들고 사용한다

create

db.dogs.insert({name: "haha"});
배열로 해도 대 객체 밖에
// 현재 사용하고 있는 db에 dogs라는 콜렉션을 만들고 insert해준다.
show collections

read

db.dogs.find()
dogs 콜렉션에 뭐가 있는지 보여준다.

db.dogs.find({name: 'min'})
dogs 콜렉션에서 name이 min것만을 보여준다.

db.dogs.findOne({name:1})
dogs 콜렉션에서 name이 1인 한 개만 보여준다.

db.dogs.find({"personality.childFriendly": true})
중첩 객체에 접근하는 법

update

수정하고나 추가해죰

db.dogs.updateOne({name: 'haha'}, {$set: {age: 4}})
dogs 콜렉션에서 name이 haha인 것을 set을 통해 age를 4로 바꿔준다

db.dogs.updateOne({name: 'haha'}, {$set: {color: 'blue'}})
dogs 콜렉션에서 name이 haha인 것은 set을 통해 color를 blue로 추가해준다.(없는 값을 업데이트 한다면 추가해줌)

db.dogs.updateMany({catFriendly: true}, {$set : {catFriendly: false}})
모두 바꿔준다.

db.cats.updateOne({age: 6}, {$set {age: 7}, $currentDate:{lastChanged: true}})
// cats 콜렉션에서 age가 6인 것을 age를 7로 수정하고 currentDate를 이용해 현재 날짜를 true에 넣어준다.

replaceOne

  • 값을 수정하는 게 아니라 모든 것을 대체하고 싶을 때

DELETE

db.cats.deleteOne({name: "Blue Steele"})
cats 콜렉션에서 name이 Blue Steele인 것을 삭제하겠다
db.cats.deleteMany({})
전체 다 삭제
db.cats.deleteMany({age: 1})
age가 1인 것들 모두 삭제

몽고디비 내장 연산자

db.dogs.find({age: {$gt: 8}})
dogs 콜렉션에서 age가 8 초과인 경우를 보여달라.

$gt 초과

$gte 이상

$lt 미만

$lte 이하

db.dogs.find({breed: {$in : ['Mutt', 'corgi']}})
dogs 콜렉션에서 breed가 Mutt와 corgi인 것을 보여달라

$in 있냐

$nin 없냐

$and, not, nor, or

db.dogs.find({or: [{'personality.catFriendly': true}, {age: {lte: 2}}]})
고양이와 친한 것이 true이거나 age가 2이하이거나 둘중 하나라도 해당 된다면 보여줘라

profile
개발 경험치 쌓는 곳

0개의 댓글