Возможно, если вы создадите две коллекции
Сначала , чтобы сохранить поле, для которого вы хотите создать номер автоинкремента как
// Inserting 2 records for which we want to create auto-increment numbers
db.autoincrementcollection.insert({
field_id: "register_id",
nextId: 0
},
{
field_id: "user_id",
nextId: 0
});
// Function is used to get the next autoincremented value
function getNextId(field)
{
var ret = db.autoincrementcollection.findAndModify({
query: { field_id: field },
update: { $inc: { nextId: 1 } },
new: true
});
return ret.nextId;
}
Второй , в котором вы хотите использовать увеличенное число, например
// inserting data in registration collection with register_id auto-increment number
db.registration.insert({
_id: getNextId("register_id"),
fname: "Rohan",
lname:"Kumar"
});
// inserting data in user collection with user_id auto-increment number
db.users.insert({
_id: getNextId("user_id"),
name: "Rohan Kumar"
});
findAndModify () может не работать, пока код использует PHP , тогда вы можете использовать find () и / или update ()
См. Документы для поле создания с автоинкрементом