도큐먼트들로부터 특정 필드 삭제하기
만약 user이라는 모델에 특정 필드 A를 삭제하고 싶다면 mongodb 에 다음과 같은 명령어를 사용할 수 있다.
db.users.update({}, {$unset: {A:1}})
위의 명령어가 의미하는 것은 그냥 아무거나 하나의 도큐먼트의 A 필드를 삭제하겠다는 것을 의미한다.
만약 다수의 도큐먼트를 처리하기 위해서는 다음과 같이 옵션을 추가하면 된다.
db.users.update({}, {$unset: {A:1}}, {multi: true})
정리
$unset 옵션은 특정 필드의 삭제를 의미한다.
반대로 $set은 특정 필드의 값을 정한다.
위의 원리를 이용하면 특정 필드의 값도 한꺼번에 set할 수 있다.
아래 예제는 모든 도큐먼트에 A 필드에 3이라는 값을 set 하는 예제이다.
db.users.update({}, {$set: {A:3}}, {multi: true})
'IT > Mongodb' 카테고리의 다른 글
서브 도큐먼트 검색 후 값 변경 (0) | 2018.02.07 |
---|---|
$elemMatch vs $in (0) | 2017.10.31 |
ISO Date 값이 한국 시간과 다를때 (1) | 2017.10.31 |
스키마 모델링 어떻게 해야 하나 (0) | 2017.10.21 |