以下是我的代码
int min=10;
int max=150;
String Col_name="indexValueO";
System.out.println("B4 Time: "+new Date());
BasicDBObject searchQuery =new BasicDBObject(Col_name, new BasicDBObject("$gte", min).append("$lte", max));
BasicDBObject updateFields = new BasicDBObject();
updateFields.append("color", "rgba(128,18,18,0.6)");
BasicDBObject setQuery = new BasicDBObject();
setQuery.append("$set", updateFields);
coll.update(searchQuery, setQuery);
LOGGER.info("Updated ");
System.out.println("After Time: "+new Date());
此处只更新一个文档,即使许多字段符合条件
答案 0 :(得分:1)
使用重载更新方法,该方法将第4个参数作为multi,以允许更新多个文档。
public WriteResult update(DBObject q, DBObject o, 布尔值upsert, boolean multi)
将multi传递为true。
或
使用重载方法隐式将multi设置为true。
public WriteResult updateMulti(DBObject q, DBObject o)