MongoDb:删除特定集合
我正在尝试删除MongoDB中的所有集合,其中这些集合中的最大文档日期早于1年。MongoDb:删除特定集合,mongodb,collections,Mongodb,Collections,我正在尝试删除MongoDB中的所有集合,其中这些集合中的最大文档日期早于1年。 我尝试过的一切都还没有奏效,所以我希望你能帮助我:) 非常感谢 我猜您的意思是,您的所有集合模式中都有一个“日期”字段 您可以这样做,但请注意,它也会删除所有没有“日期”字段的集合 db.getCollectionNames().forEach(函数(集合){ var lastYear=新日期(); lastYear.setFullYear(lastYear.getFullYear()-1); var colle
我尝试过的一切都还没有奏效,所以我希望你能帮助我:)
非常感谢 我猜您的意思是,您的所有集合模式中都有一个“日期”字段 您可以这样做,但请注意,它也会删除所有没有“日期”字段的集合
db.getCollectionNames().forEach(函数(集合){
var lastYear=新日期();
lastYear.setFullYear(lastYear.getFullYear()-1);
var collectionCount=db[collection].count({date:{$gt:lastYear}});
如果(0==collectionCount){
db[collection].drop();
}
})
您正在告知要删除所有文档都已过期一年的集合
所以你初始化了一个迭代器
然后使用计数聚合,如果计数值大于一,则使用“drop”删除集合:)变量“date”的最大日期。所以在MySQL中就像“…有max(date)