有没有办法限制某些集合中的记录数量

use*_*108 2 mongodb

假设我插入以下记录(例如foo1,foo2,foo3,foo4,.... foo10)我希望该集合在任何时间点只保留5条记录(例如它可能是foo1,... foo5或foo2 ,... foo6或foo6,... foo10)

我该怎么做到这一点?

mu *_*ort 5

听起来你正在寻找一个有上限的集合:

上限集合是固定大小的集合......
[...]
一旦空间被充分利用,新添加的对象将替换集合中最旧的对象.


您可以使用类似的命令来实现此目的

db.createCollection("collectionName",{capped:true,size:10000,max:5})
Run Code Online (Sandbox Code Playgroud)

其中10000是以字节为单位的大小,5是您要在集合中限制的最大文档数.