본문 바로가기
면접공부/DB

MongoDB

by Box 2021. 5. 27.
728x90

populate : 다른 컬렉션에있는 도큐먼트를 참조하느데 사용된다(sql에 Join과 비슷한 기능)

update - eq

const test = ()=>{

             return userModel.updateMany({

              "name" : { $eq : 'a' }

               }, { $set : { "name" : 'b' }

               }, { upsert: true, multi: true, new : true }

               ).lean(); }

 

1. name 키를 가진 것중 a를 찾아 ($eq)

2. name 을 b로 바꿉니다. ($set)

3. upsert를 true로 해주면 해당 document 가 없으면 insert 를 해줍니다

몇개를 바꾸었는지를 객체로 볼 수 있습니다.

update - lean : 무려 성능차이에서 4배를 일으키는 이 lean은 순수 자바스크립트 객체를 리턴하는데 쓰입니다.

 

 

update - in

1. name 중에 a, b, c중에 하나라도 있으면.. ($in)

 

update - push & each

2. list에 [1, 2, 3]을 추가시킵니다. ($push),여러 값을 추가($each)

 

update - ne

1. eq의 반대입니다. ne, 즉 name값이 a가 아닌 것을 뜻합니다.

 

update - addToSet

addToSet 은 push를 하는데 중복인 요소를 제외하고 push를 합니다. set의 발전형태입니다.

단 이는 배열에 국한됩니다. "배열"에 push를 하는데 중복을 제외하고 싶다? 그렇다면 addToSet을 쓰면 됩니다. 그렇지 않을 경우에는 $set을 쓰면 해결이 됩니다.

 

 

 

'면접공부 > DB' 카테고리의 다른 글

SQL || NOSQL  (0) 2021.05.21