sql >> Databasteknik >  >> NoSQL >> MongoDB

Åtkomstelement i mongo array i java

För att göra detta med Java-drivrutinen kan du göra följande:

DBObject queryForElem = new BasicDBObject("array", new BasicDBObject("$elemMatch", new BasicDBObject("id", "3456")));
DBObject updateMatchingElem = new BasicDBObject("$set", new BasicDBObject("array.$.Y", "1"));
coll.update(queryForElem, updateMatchingElem);

Med tanke på att det är lite otympligt kan du använda QueryBuilder istället, vilket ger dig lite mer läsbarhet:

DBObject queryForElem = QueryBuilder.start("array").elemMatch(new BasicDBObject("id", "3456")).get();
DBObject updateMatchingElem = new BasicDBObject("$set", new BasicDBObject("array.$.Y", "1"));
coll.update(queryForElem, updateMatchingElem);


  1. MongoDB C# drivrutinstyp diskriminatorer med generisk klass som ärver från icke-generisk basklass

  2. Hur man filtrerar en samling baserat på varje matrisobjekt i ett dokumentfält i Mongodb

  3. Installerar du PHP 7 MongoDB-klienten/drivrutinen?

  4. MongoDB:Uppdaterar underdokument