我在mongoDB中有几个文档,doc结构就像这样
{
"a":"abc",
"myid":2
}
我想更新" myid"所有文件的1.例如第一个文件myid = 1,第二个文件myid = 2等等。有查询吗?
答案 0 :(得分:1)
尝试此查询:
db.collection.updateMany(
{},
{$inc:{myid:1}}
)
答案 1 :(得分:-2)
创建一个名为Counter的单独Collection,以跟踪最后一个序列号。
db.counters.insert(
{
_id: "userid",
seq: 0
});
创建一个函数来获取Counter集合的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")
});
我希望这会对你有所帮助。