在 MongoDB 中修改序列
要修改序列,请使用 findAndModify()。让我们使用文档创建集合 −
> db.demo261.insertOne({_id:100,Name:"Chris"}); { "acknowledged" : true, "insertedId" : 100 }
通过 find() 方法显示集合中的所有文档 −
> db.demo261.find();
这将生成以下输出 −
{ "_id" : 100, "Name" : "Chris" }
以下是修改序列的查询 −
> db.demo262.insert({_id:"newId",sequence_value:0}) WriteResult({ "nInserted" : 1 }) > function getNext(sName){ ... ... var d= db.demo262.findAndModify({ ... query:{_id: sName}, ... update: {$inc:{sequence_value:1}}, ... new:true ... }); ... return d.sequence_value; ...}
以下是调用以上函数在 MongoDB 中生成序列的查询 −
> db.demo261.insert({ ... "_id":getNext("newId"), ... "Name":"Chris" ... }) WriteResult({ "nInserted" : 1 }) > db.demo261.insert({ "_id":getNext("newId"), "Name":"Bob" }) WriteResult({ "nInserted" : 1 })
通过 find() 方法显示集合中的所有文档 −
> db.demo261.find();
这将生成以下输出 −
{ "_id" : 100, "Name" : "Chris" } { "_id" : 1, "Name" : "Chris" } { "_id" : 2, "Name" : "Bob" }
广告