sql >> Databasteknik >  >> NoSQL >> MongoDB

Ger MongoDB ett sätt att generera sekventiella värden?

Generellt i MongoDB skulle du inte använda ett automatiskt inkrementmönster eftersom det inte skalas för databaser med ett stort antal dokument. Det är dock möjligt att göra detta genom att använda en separat räknarsamling för att spåra den senast använda nummersekvensen:

db.counters.insert(
  {
     _id: "userid",
      seq: 0
   }
  )

Du kan sedan skapa en funktion som ger dig nästa nummer i sekvensen:

function getNextSequence(name) {
  var ret = db.counters.findAndModify(
         {
           query: { _id: name },
           update: { $inc: { seq: 1 } },
           new: true
         }
  );



  1. Hur lägger man till makros definition i cmake?

  2. MongoDB-skärning, hur balanserar den om när man lägger till nya noder?

  3. Se till att index inte fungerar - MongoDB

  4. docker-compose undertrycka mongodb-utgång