我最近开始学习MongoDB。 今天我读到我可以使用以下代码创建序列;
function seq_no(name) {
var ret = db.seq_no.findAndModify ({query:{_id:name}, update:{$inc:{next:1}}, "new":true, upsert:true});
return ret.next;
}
db.order_no.insert({_id:seq_no("order_no"), name:"Jimmy"})
我想知道" new"之间的区别是什么?并在这里竖立。 你会解释一下吗?
答案 0 :(得分:0)
它们是完全不同的标志
如果 upsert 为true,那么如果尝试更新的行不存在,则会插入新行,如果为false,则表示不执行任何操作。
如果 new 为true,则在更新后返回修改后的文档而不是原始文档,如果为false则返回原始文档