문서 메뉴

문서 홈애플리케이션 개발MongoDB 매뉴얼

$each

이 페이지의 내용

  • 정의
  • 행동
  • 예제
$each

$each 수정자는 $addToSet 연산자 및 $push 연산자와 함께 사용할 수 있습니다.

$addToSet 연산자와 함께 사용하면 <field> 에 값이 없는 경우 <field>배열에 여러 값을 추가할 수 있습니다.

{ $addToSet: { <field>: { $each: [ <value1>, <value2> ... ] } } }

$push 연산자와 함께 사용하면 <field> 배열에 여러 값을 추가할 수 있습니다.

{ $push: { <field>: { $each: [ <value1>, <value2> ... ] } } }

$push 연산자는 $each 수정자를 다른 수정자와 함께 사용할 수 있습니다. $push 에 사용할 수 있는 수정자 목록은 수정자를 참조하세요 .

MongoDB 5.0부터 업데이트 연산자는 문자열 기반 이름이 있는 문서 필드를 사전순으로 처리합니다. 숫자 이름이 있는 필드는 숫자 순서대로 처리됩니다. 자세한 내용은 업데이트 운영자 동작을 참조하십시오.

다음 예시에서는 name 필드가 joe 인 문서의 scores 배열에 각 [ 90, 92, 85 ] 요소를 추가합니다.

db.students.updateOne(
{ name: "joe" },
{ $push: { scores: { $each: [ 90, 92, 85 ] } } }
)

컬렉션 inventory에는 다음 문서가 있습니다.

{ _id: 2, item: "cable", tags: [ "electronics", "supplies" ] }

그런 다음 다음 작업은 $addToSet 연산자를 $each 수정자와 함께 사용하여 tags 배열에 여러 요소를 추가합니다.

db.inventory.updateOne(
{ _id: 2 },
{ $addToSet: { tags: { $each: [ "camera", "electronics", "accessories" ] } } }
)

이 작업은 tags 배열에 "camera""accessories"만 추가합니다. "electronics" 이 이미 배열에 있었습니다:

{
_id: 2,
item: "cable",
tags: [ "electronics", "supplies", "camera", "accessories" ]
}
← $pullAll

이 페이지의 내용