指定时间后自动从mongodb中删除文档

wei*_*der 6 mongodb

我想collection根据ttl. 我已经看过其他答案并想出了以下方法:

db.collection.createIndex( { "createdAt": 1 }, { expireAfterSeconds: 3600 } )
Run Code Online (Sandbox Code Playgroud)

这将在expireAfterSeconds间隔后从createdAt字段中删除文档。

但是,上面的问题在于它不是特定于文档的。在上述场景中,所有文档将在3600创建时间后被删除。但是,就我而言,集合中的每个文档都需要以不同的时间间隔删除。因此,每个文档都需要有自己的ttl. 我怎样才能做到这一点?

小智 7

您可以为每个文档设置特定的删除时间。请检查文档https://docs.mongodb.com/manual/tutorial/expire-data/在“在特定时钟时间使文档过期”捕获器下