是否有任何方法或軟件包可以幫助我將自動增量添加到現有集合中?互聯網全是關於如何在創建收藏之前添加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. 如何將具有自動增量名稱的列添加到MySql表中?
- 7. SQL Server將自動增加主鍵添加到現有表
- 8. 如何將代理自動增加鍵添加到表中?
- 9. 增加現有SQL中的自動增量表
- 10. 如何將集合添加到Backbone中的另一個集合
- 11. 如何將自動增量值添加到域
- 12. 如何在JavaScript中將變量添加到現有變量中?
- 13. laravel-mongodb:如何將外鍵添加到兩個現有集合?
- 14. 如何將屬性添加到標有XmlArrayAttribute的集合中?
- 15. VBA:將對象添加到集合中會增加內存使用量
- 16. 對現有集合的增量字段
- 17. 如何將此行添加到此表中,而不會影響自動增量
- 18. 現有表中添加自動遞增的主鍵 - SQL
- 19. 如何添加一個自動增量到一個doctrinemigration列?
- 20. 將迭代器添加到集合中
- 21. 將元素添加到集合中,將元素添加到包含此集合的對象的所有實例
- 22. 如何自動將新博客添加到現有頁面?
- 23. 如何自動將現有項目添加到Visual Studio項目?
- 24. 如何將一個集合的內容添加到新集合
- 25. 如何在非自動增量表中找到最後添加的ID?
- 26. 將羣集添加到oracle中的現有表中
- 27. Backbone:將模型添加到集合視圖中的集合?
- 28. 將集合添加到backbone.js中的另一個集合
- 29. 使用自動增量將值添加到數據庫Id
- 30. 自動增量DataGrid列,無需將其添加到DataContext
什麼你的意思是自動增量? Mongo的_id是自動生成的。 –
@Jeremy Thille 1,2,3,4,5 ......等等。 –
Mongodb沒有本地自動遞增整數序列AFAIK。 –