수색…


통사론

  • {$ 집합 : {<field1> : <value1>, <field2> : <value2>, ...}}

매개 변수

매개 변수들 의미
분야 명 필드가 업데이트됩니다. { name : 'Tom'}
targetVaule 값이 필드에 지정됩니다. {name : 'Tom' }

비고

$ set 연산자에 대한 참조 : 공식 웹 사이트에 설정된 $

$ set 연산자를 사용하여 문서의 지정된 필드를 업데이트합니다.

I. 개요

MongoDB와 RDBMS의 중요한 차이점은 MongoDB에는 많은 종류의 연산자가 있다는 것입니다. 그 중 하나는 update 명령문에 사용되는 update 연산자입니다.

업데이트 운영자를 사용하지 않으면 어떻게 될까요?

학생 정보를 저장하기위한 학생 컬렉션이 있다고 가정합니다 (표보기). 여기에 이미지 설명을 입력하십시오.

어느 날 톰의 성을 "M"에서 "F"로 바꿔야하는 직업을 얻습니다. 그거 쉽지, 그렇지? 따라서 RDBMS 환경을 기반으로 매우 빠르게 성명서를 작성할 수 있습니다.

db.student.update(
    {name: 'Tom'}, // query criteria
    {sex: 'F'} // update action
);

결과가 무엇인지 봅시다. 여기에 이미지 설명을 입력하십시오.

우리는 톰의 나이와 이름을 잃어 버렸다! 이 예제에서 update 문에서 업데이트 연산자가 없으면 전체 문서가 무시 된다는 것을 알 수 있습니다 . 이것은 MongoDB의 기본 동작입니다.

III. $ 집합 연산자

Tom의 문서에서 'sex'필드 만 변경하려면 $set 을 사용하여 업데이트 할 필드를 지정하십시오.

db.student.update(
    {name: 'Tom'}, // query criteria
    {$set: {sex: 'F'}} // update action
);

$set 의 값은 객체이며 필드는 문서에서 업데이트하려는 필드를 나타내며이 필드의 값은 대상 값입니다.

결과는 정확합니다. 여기에 이미지 설명을 입력하십시오.

또한 '성'과 '나이'를 동시에 변경하려면 $set 추가 할 수 있습니다.

db.student.update(
    {name: 'Tom'}, // query criteria
    {$set: {sex: 'F', age: 40}} // update action
);


Modified text is an extract of the original Stack Overflow Documentation
아래 라이선스 CC BY-SA 3.0
와 제휴하지 않음 Stack Overflow