所以我试图找到一种方法来限制存储在MongoDB数据库中的文档数量。例如,让我们说我在数据库中有10个文档并且每1分钟插入一个新文档,但我只想在我的数据库中添加10个文档,我想弄清楚的是什么是最好的解决方法这样,当输入一个新文件时,它会删除最旧的文件。
例如id" 1,2,3,4,5,6,7,8,9,10"当id 11被插入时我希望id 1被删除,当id 12被插入时我希望id 2被删除等等,
我测试了MongoDB的TTL功能,但它没有给我我想要的结果。
非常感谢任何帮助。
答案 0 :(得分:1)
如果您正在使用此lib,则可以通过以下代码执行此操作:
$collection->insertOne($document);
if ($collection->count() > 10) {
$collection->findOneAndDelete([], ['sort' => 'id']);
}