gpt4 book ai didi

java - Mongo 更新后获取受影响的行

转载 作者:行者123 更新时间:2023-11-30 07:47:30 25 4
gpt4 key购买 nike

如何指示 Mongo 在更新后返回受影响的行?目前它返回

{ "serverUsed" : "localhost:27017" , "ok" : 1 , "n" : 12 , "updatedExisting" : true}

这意味着 12 条记录已更新,但我想找出它们是哪些记录。

一种解决方法是执行两次查询,首先查找 _id,然后实际更新它们,但这还不够好。

非常感谢

R。

最佳答案

使用findAndModify() API。例如,遵循此博客文章 MongoDB findAndModify() examples using Mongo Shell and Java Driver 中的指南,您可以将更新查询编写为:

    // findAndModify operation. Update colour to blue for cars having speed < 45
DBObject query = new BasicDBObject("speed",
new BasicDBObject("$lt", 45));
DBObject update = new BasicDBObject();
update.put("$set", new BasicDBObject("color", "Blue"));
DBCursor cursor = coll.find();
try {
while (cursor.hasNext()) {
System.out.println(cursor.next());
}
} finally {
cursor.close();
}
coll.findAndModify(query, update);

关于java - Mongo 更新后获取受影响的行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33720367/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com