我对 MongoDB 很陌生,它是 Java 驱动程序。
我需要更新子字段的值,但我在网上找不到任何示例。
文档:
{
"_id" : ObjectId("45678942342"),
"user" : "me",
"aStruct" : {
"subfield_1" : true,
"subfield_2" : true
}
}
对于每个包含user = me 的文档,如何将子字段 subfield_1 的值更新为 false> ?
谢谢。
最佳答案
您可以按如下方式进行:
db.collection.update({user : "me"},{$set:{"aStruct.subfield_1" : false}}, false, true)
在 Java 中,您可以按如下方式执行此操作:
DBCollection coll = // Define your collection here
DBObject query = new BasicDBObject();
query.put("user", "me");
DBObject updateObj = new BasicDBObject();
updateObj.put("aStruct.subfield_1", false);
coll.updateMulti(query, new BasicDBObject("$set", updateObj));
有关详细信息,请阅读以下文档。
关于java - 使用 Java 驱动程序更新 MongoDB 中子字段的值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20744062/