mongodb通过将值增加1来更新所有文档
我在mongoDB中有几个文档,文档结构如下mongodb通过将值增加1来更新所有文档,mongodb,Mongodb,我在mongoDB中有几个文档,文档结构如下 { "a":"abc", "myid":2 } 我想用1更新所有文档的“myid”。例如,对于第一个文档myid=1,对于第二个文档myid=2,依此类推。是否有查询?创建一个名为Counter的单独集合来跟踪最后一个序列号 db.counters.insert( { _id: "userid", seq: 0 }); 并创建一个函数来获取计数器集合的seq值 function getNex
{
"a":"abc",
"myid":2
}
我想用1更新所有文档的“myid”。例如,对于第一个文档myid=1,对于第二个文档myid=2,依此类推。是否有查询?创建一个名为Counter的单独集合来跟踪最后一个序列号
db.counters.insert(
{
_id: "userid",
seq: 0
});
并创建一个函数来获取计数器集合的seq值
function getNextSequence(name) {
var ret = db.counters.findAndModify(
{
query: { _id: name },
update: { $inc: { seq: 1 } },
new: true
});
return ret.seq;
}
并按如下方式递增自动递增字段
db.collection.insert({
"a":"abc",
"myid": getNextSequence("userid")
});
我希望这将对您有所帮助。尝试以下查询:
db.collection.updateMany(
{},
{$inc:{myid:1}}
)
请检查下面的答案。