Database 使用mongo自动过期功能从集合中删除一些筛选的文档

Database 使用mongo自动过期功能从集合中删除一些筛选的文档,database,mongodb,ttl,document-oriented-db,Database,Mongodb,Ttl,Document Oriented Db,我有一个名为“feed”的收藏 每个文档中都有称为“status”和“scheduleDate”的键 我想在scheduleDate键上设置一个基于ttl的索引,但只应删除那些具有 status:{$in:["invalid", "cancelled"]} 有办法吗?目前从MongoDB 4.0开始,TTL索引不支持其他字段。也就是说,目前不支持复合TTL索引,如中所述。为了达到您的要求,您需要设置一个外部批处理过程,使用cron或类似工具手动删除文档。甚至我也认为我需要自己编写一个cron作

我有一个名为“feed”的收藏

每个文档中都有称为“status”和“scheduleDate”的键

我想在scheduleDate键上设置一个基于ttl的索引,但只应删除那些具有

status:{$in:["invalid", "cancelled"]}

有办法吗?

目前从MongoDB 4.0开始,TTL索引不支持其他字段。也就是说,目前不支持复合TTL索引,如中所述。为了达到您的要求,您需要设置一个外部批处理过程,使用
cron
或类似工具手动删除文档。甚至我也认为我需要自己编写一个cron作业。只是想确保我没有遗漏mongodb文档中的任何内容。谢谢你。