MongoDB 自動增長

      網友投稿 727 2022-05-29

      使用 counters 集合

      考慮以下 products 文檔。我們希望 _id 字段實現 從 1,2,3,4 到 n 的自動增長功能。

      { "_id":1, "product_name": "Apple iPhone", "category": "mobiles" }

      MongoDB 自動增長

      為此,創建 counters 集合,序列字段值可以實現自動長:

      >db.createCollection("counters")

      現在我們向 counters 集合中插入以下文檔,使用 productid 作為 key:

      { "_id":"productid", "sequence_value": 0 }

      sequence_value 字段是序列通過自動增長后的一個值。

      使用以下命令插入 counters 集合的序列文檔中:

      >db.counters.insert({_id:"productid",sequence_value:0})

      創建 Javascript 函數

      現在,我們創建函數 getNextSequenceValue 來作為序列名的輸入, 指定的序列會自動增長 1 并返回最新序列值。在本文的實例中序列名為 productid 。

      >function getNextSequenceValue(sequenceName){ var sequenceDocument = db.counters.findAndModify( { query:{_id: sequenceName }, update: {$inc:{sequence_value:1}}, "new":true }); return sequenceDocument.sequence_value; }

      使用 Javascript 函數

      接下來我們將使用 getNextSequenceValue 函數創建一個新的文檔, 并設置文檔 _id 自動為返回的序列值:

      >db.products.insert({ "_id":getNextSequenceValue("productid"), "product_name":"Apple iPhone", "category":"mobiles"}) >db.products.insert({ "_id":getNextSequenceValue("productid"), "product_name":"Samsung S3", "category":"mobiles"})

      就如你所看到的,我們使用 getNextSequenceValue 函數來設置 _id 字段。

      為了驗證函數是否有效,我們可以使用以下命令讀取文檔:

      >db.products.find()

      以上命令將返回以下結果,我們發現 _id 字段是自增長的:

      { "_id" : 1, "product_name" : "Apple iPhone", "category" : "mobiles"} { "_id" : 2, "product_name" : "Samsung S3", "category" : "mobiles" }

      MongoDB

      版權聲明:本文內容由網絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發現本站中有涉嫌抄襲或描述失實的內容,請聯系我們jiasou666@gmail.com 處理,核實后本網站將在24小時內刪除侵權內容。

      上一篇:糾結!分布式鎖到底用Redis好還是ZooKeeper好?
      下一篇:十張圖看懂華為業務與組織架構
      相關文章
      亚洲AV无码一区二区三区性色 | 亚洲1区2区3区精华液| 亚洲成人中文字幕| 亚洲无线观看国产精品| 久久精品国产亚洲5555| 亚洲国产成人久久笫一页| 国产精品亚洲va在线观看| 亚洲AV成人片无码网站| 色噜噜噜噜亚洲第一| 久久久亚洲精华液精华液精华液| 亚洲精品人成网线在线播放va| 中文字幕在线观看亚洲日韩| 亚洲永久在线观看| 亚洲经典千人经典日产| 国产精品亚洲AV三区| 国产精品久久久久久亚洲影视| 国产亚洲精品精品精品| 亚洲AⅤ优女AV综合久久久| 国产亚洲综合视频| 亚洲免费一区二区| 久久久久亚洲AV综合波多野结衣| 久久久久亚洲精品天堂久久久久久| 久久久久久亚洲精品不卡| 亚洲无人区一区二区三区| 亚洲乳大丰满中文字幕| 久久久久亚洲精品成人网小说| 亚洲国产综合91精品麻豆| 亚洲视频在线免费看| 亚洲另类自拍丝袜第1页| 日韩亚洲产在线观看| 亚洲AV无码精品国产成人| 亚洲äv永久无码精品天堂久久 | 亚洲日韩国产AV无码无码精品| 亚洲AV成人无码网天堂| 亚洲黄黄黄网站在线观看| 亚洲人成人一区二区三区| 亚洲日本在线看片| 亚洲伦理一二三四| 亚洲s码欧洲m码吹潮| 亚洲午夜av影院| 久久亚洲精品国产精品黑人|