다음 연산자는 db.collection.updateMany() 및 db.collection.findAndModify()와 같은 업데이트 작업에 사용할 수 있습니다.
구문
다음 형식으로 업데이트 연산자를 지정합니다.
{ <operator1>: { <field1>: <value1>, ... }, <operator2>: { <field2>: <value2>, ... }, ... }
행동
업데이트 연산자는 사전순으로 문자열 기반 이름이 있는 문서 필드를 프로세스 . 숫자 이름이 있는 필드는 숫자 순서대로 처리됩니다.
다음 예시 $set 명령을 고려해보세요.
{ $set: { "a.2": <new value>, "a.10": <new value>, } }
"a.2" 는 숫자 순서로 2이 10 앞에 오기 때문에 "a.10"보다 먼저 처리됩니다.
Array Update Modifiers
배열 업데이트 연산자
다음 연산자는 배열 의 내용을 수정합니다.
비트 단위 업데이트 연산자
다음 연산자 정수 값의 비트 업데이트 수행합니다.
이름 | 설명 |
|---|---|
정수 값의 비트 단위 |
필드 업데이트 연산자
다음 연산자는 문서 의 필드를 수정합니다.
이름 | 설명 |
|---|---|
필드의 값을 현재 날짜(날짜 또는 타임스탬프)로 설정합니다. | |
필드 값을 지정된 양만큼 증가시킵니다. | |
지정된 값이 기존 필드 값보다 작은 경우에만 필드를 업데이트합니다. | |
지정된 값이 기존 필드 값보다 큰 경우에만 필드를 업데이트합니다. | |
필드 값에 지정된 금액을 곱합니다. | |
필드 이름을 변경합니다. | |
문서에서 필드 값을 설정합니다. | |
업데이트로 인해 문서가 삽입되는 경우 필드 값을 설정합니다. 기존 문서를 수정하는 업데이트 작업에는 영향을 주지 않습니다. | |
문서에서 지정된 필드를 제거합니다. |
위치 업데이트 연산자
다음 연산자는 업데이트 할 배열 요소를 식별하는 자리 표시자 역할을 합니다.
이름 | 설명 |
|---|---|
쿼리 조건과 일치하는 첫 번째 요소를 업데이트하는 자리 표시자 역할을 합니다. | |
쿼리 조건과 일치하는 문서에 대한 배열의 모든 요소를 업데이트하는 자리 표시자 역할을 합니다. | |
쿼리 조건과 일치하는 문서의 |
집계 파이프라인으로 업데이트.
현재 필드 값을 기반으로 하는 조건부 업데이트 또는 다른 필드 의 값을 사용하는 단일 필드 업데이트와 같은 표현식 업데이트 문을 생성하려면 집계 파이프라인 사용하여 업데이트를 수행할 수 있습니다.
구문 및 예제는 집계 파이프라인을 사용한 업데이트를 참조하세요.