我有一个device
集合。
{
"_id" : "10-100-5675234",
"_type" : "Device",
"alias" : "new Alias name",
"claimCode" : "FG755DF8N",
"hardwareId" : "SERAIL02",
"isClaimed" : "true",
"model" : "VMB3010",
"userId" : "5514f428c7b93d48007ac6fd"
}
我想通过 _id
搜索文档,然后在从结果文档中删除字段 userId
后更新它。我正在尝试不同的方法,但它们都不起作用。请帮助我。
最佳答案
您可以使用带有 mongo-java 驱动程序的 $unset
以这种方式删除字段:
MongoClient mongo = new MongoClient("localhost", 27017);
DB db = (DB) mongo.getDB("testDB");
DBCollection collection = db.getCollection("collection");
DBObject query = new BasicDBObject("_id", "10-100-5675234");
DBObject update = new BasicDBObject();
update.put("$unset", new BasicDBObject("userId",""));
WriteResult result = collection.update(query, update);
mongo.close();
关于java - 如何使用java在mongodb中搜索文档并从中删除字段?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29389746/