sql >> データベース >  >> NoSQL >> MongoDB

MongoDBは、シーケンシャル値を生成する方法を提供しますか?

    通常、MongoDBでは、自動インクリメントパターンを使用しません。これは、ドキュメントの数が多いデータベースではスケーリングされないためです。ただし、別のカウンターコレクションを使用して、最後に使用された数列を追跡することで、これを行うことができます。

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

    次に、シーケンス内の次の番号を返す関数を作成できます。

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



    1. RedisのAzureCache/DataCacheスタイルのリージョン

    2. ネストされた関係MongoDb

    3. MongoDBサーバーデータをIndexedDBローカルストアに同期する

    4. mongodbコレクションから最大値を取得する方法