복붙노트

[SPRING] Mongodb 중첩 된 배열 내부의 값 증가

SPRING

Mongodb 중첩 된 배열 내부의 값 증가

저는 봄에 mongotemplate을 사용하고 있습니다. 저는 원자 적으로 배열에있는 내 문서 중 하나의 값을 어떻게 증가시킬 수 있는지 궁금합니다. 우리가 가지고 있다고 상상해보십시오.

{'a':1,
   b:[{_id:341432,
       c:2
      },
      {_id:341445,
       c:3
      }]};

내가 원하는 것은 _id에 대해 c를 3에서 4로 증가시키는 것입니다. 341445

내가 findAndModify 사용하고 있지만 배열에 중첩 된 문서를 만들 수 있습니다.

문안 인사.

해결법

  1. ==============================

    1.배열 필드의 요소를 업데이트하려면 위치 $ 연산자를 사용할 수 있습니다.

    배열 필드의 요소를 업데이트하려면 위치 $ 연산자를 사용할 수 있습니다.

    예를 들어, 다음 js는 _id 341445에 대해 c를 3에서 4로 증가시킵니다.

    db.collection.update({a:1, "b._id":341445} , {$inc:{"b.$.c":1}})
    
  2. from https://stackoverflow.com/questions/16037788/mongodb-increment-value-inside-nested-array by cc-by-sa and MIT license