gpt4 book ai didi

mongodb - 使用 mongodb 中的搜索条件更新最后一行

转载 作者:可可西里 更新时间:2023-11-01 10:42:25 24 4
gpt4 key购买 nike

下面是我的收藏:

db.himtest.find({name:"himanshu"})
{ "_id" : ObjectId("56f1667611c54cf649076577"), "name" : "himanshu", "age" : 45,
"points" : 10 }
{ "_id" : ObjectId("56f1667c11c54cf649076578"), "name" : "himanshu", "age" : 35,
"points" : 10 }
{ "_id" : ObjectId("56f1669511c54cf64907657b"), "name" : "himanshu", "age" : 35,
"points" : 1100 }
{ "_id" : ObjectId("56f1669a11c54cf64907657c"), "name" : "himanshu", "age" : 35,
"points" : 11000 }
{ "_id" : ObjectId("56f1669d11c54cf64907657d"), "name" : "himanshu", "age" : 45,
"points" : 11000 }
{ "_id" : ObjectId("56f166a311c54cf64907657e"), "name" : "himanshu", "age" : 45,
"points" : 1200 }

现在我想根据任何选择标准更新最后一行,例如:

    db.himtest.find({name:"himanshu",age:45}).sort({_id:-1}).limit(1).update({points:100});

最佳答案

您可以使用 findAndModify 执行此操作它允许您包含一个排序规范来标识要更新的匹配文档:

db.himtest.findAndModify({
query: {name: "himanshu", age: 45},
sort: {_id: -1},
update: {$set: {points: 100}},
new: true
})

如果您使用的是 v3.2 或更高版本,您还可以使用 findOneAndUpdate :

db.himtest.findOneAndUpdate(
{name: "himanshu", age: 45},
{$set: {points: 100}},
{
sort: {_id: -1},
returnNewDocument: true
})

关于mongodb - 使用 mongodb 中的搜索条件更新最后一行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36169045/

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