是否有任何方法或軟件包可以幫助我將自動增量添加到現有集合中?互聯網全是關於如何在創建收藏之前添加AI的信息,但在收集已經存在時我沒有找到有關如何添加AI的信息...如何將自動增量添加到mongodb/node.js中的現有集合中?
-2
A
回答
1
的MongoDB不具有一個內置的自動遞增功能。
創建一個新的集合來跟蹤用於插入最後一個序列值:
db.createCollection("counter")
它只能容納一個紀錄:
db.counter.insert({_id:"mySequence",seq_val:0})
創建一個JavaScript函數爲:
function getNextSequenceVal(seq_id){
// find record with id seq_id and update the seq_val by +1
var sequenceDoc = db.counter.findAndModify({
query:{_id: seq_id},
update: {$inc:{seq_val:1}},
new:true
});
return sequenceDoc.seq_val;
}
要更新現有集合中已有的所有值, HOULD工作(對於空{},你可以把你的情況,如果你想只更新部分文件):
db.myCollection.update({},
{$set:{'_id':getNextSequenceVal("mySequence")}},{multi:true})
現在你可以插入新記錄到您現有的集合爲:
db.myCollection.insert({
"_id":getNextSequenceVal("mySequence"),
"name":"ABC"
})
1
MongoDB保留所有文檔的頂級域中的_id
字段爲一個主鍵。 _id必須是唯一的,並且始終具有唯一約束的索引。這是一個自動遞增的字段。但是,可以按照MongoDB文檔中的教程定義自己的自動遞增字段。
Tutorial link
:https://docs.mongodb.com/v3.0/tutorial/create-an-auto-incrementing-field/
相關問題
- 1. 將自動增量列添加到現有的紅移表中
- 2. 如何將現有項目添加到C#中的集合中#
- 3. 如何將數組添加到mongoDb中的現有集合中
- 4. 如何將聚合變量添加到R中的現有數據集中
- 5. 如何在PostgreSQL中將自動遞增主鍵添加到現有表中?
- 6. 如何將自動遞增列添加到現有的Vertica表中?
- 7. 如何將具有自動增量名稱的列添加到MySql表中?
- 8. SQL Server將自動增加主鍵添加到現有表
- 9. 如何將代理自動增加鍵添加到表中?
- 10. 合流 - 如何將自動遞增列添加到表
- 11. 將自動遞增ID添加到現有的升序列?
- 12. 增加現有SQL中的自動增量表
- 13. 如何將集合添加到Backbone中的另一個集合
- 14. 如何在JavaScript中將變量添加到現有變量中?
- 15. 如何將自動增量值添加到域
- 16. 如何使用phpmyadmin將自動增量添加到mysql數據庫中的列?
- 17. laravel-mongodb:如何將外鍵添加到兩個現有集合?
- 18. 如何在mongodb中創建自動增量子集合?
- 19. 如何將屬性添加到標有XmlArrayAttribute的集合中?
- 20. 對現有集合的增量字段
- 21. VBA:將對象添加到集合中會增加內存使用量
- 22. 如何將增量添加到PHP中的變量名稱?
- 23. 如何將此行添加到此表中,而不會影響自動增量
- 24. 如何使用貓鼬將動態字段添加到現有集合
- 25. 如何在集合中添加集合?
- 26. 現有表中添加自動遞增的主鍵 - SQL
- 27. 在mysql中添加具有自動增量的主鍵
- 28. 如何將元素添加到集合
- 29. 如何在c#中添加自動增量和主鍵#
- 30. 將新的集合添加到現有的mongo數據庫
什麼你的意思是自動增量? Mongo的_id是自動生成的。 –
@Jeremy Thille 1,2,3,4,5 ......等等。 –
Mongodb沒有本地自動遞增整數序列AFAIK。 –