sql >> Database >  >> NoSQL >> MongoDB

Hoe de waarde van een specifiek ingesloten document, in een array, van een specifiek document in MongoDB bij te werken?

Hier is de oplossing van RameshVel vertaald naar java:

    DB db = conn.getDB( "yourDB" ); 
    DBCollection coll = db.getCollection( "yourCollection" );

    ObjectId _id = new ObjectId("4e71b07ff391f2b283be2f95");
    ObjectId arrayId = new ObjectId("4e639a918dca838d4575979c");

    BasicDBObject query = new BasicDBObject();
    query.put("_id", _id);
    query.put("array._arrayId", arrayId);

    BasicDBObject data = new BasicDBObject();
    data.put("array.$.someField", "updated");

    BasicDBObject command = new BasicDBObject();
    command.put("$set", data);

    coll.update(query, command);


  1. Flask by example - Een Redis-taakwachtrij implementeren

  2. MongoDB best practice voor verwijzingen

  3. Wat is het verschil tussen opslaan en invoegen in Mongo DB?

  4. hoe een willekeurig json-object op webapi te plaatsen