如何在Mongo中编写查询以删除DateTimeOffset大于30天的记录

时间:2019-07-15 14:40:51

标签: mongodb datetimeoffset robo3t

1 个答案:

答案 0 :(得分:1)

您可以在创建记录时设置TTL索引。TTL索引是特殊的单字段索引,MongoDB可使用该索引在特定时间段或特定时钟时间自动从集合中删除文档。

要创建TTL索引,请在其值为日期或包含日期值的数组的字段上将 db.collection.createIndex()方法与expireAfterSeconds选项一起使用。

例如,要创建一个TTL索引以在30天后删除User集合的createdDate字段上的记录,请在mongo shell中使用以下操作:

db.User.createIndex( { "createdDate": 1 }, { expireAfterSeconds: 2592000 } )

src: https://docs.mongodb.com/manual/core/index-ttl/