Sequence Numbers:序列号
传统的数据库中,通常用一个递增的序列来提供主键,在 MongoDB
中用 ObjectId 的来代替,我们可以通过如下的函数来获取主键
function counter(name) { var ret = db.counters.findAndModify({query:{_id:name}, update:{$inc : {next:1}}, "new":true, upsert:true}); return ret.next; } db.users.insert({_id:counter("users"), name:"Sarah C."}) // _id : 1 db.users.insert({_id:counter("users"), name:"Bob D."}) // _id :2