返回基于在蒙戈列值集合名称(Return Collection names based on col

2019-10-21 13:01发布

我有5个集合C1,C2,C3,C4和N5各自具有LAST_UPDATED值。

db.getCollectionNames().filter(function(c){ return c.indexOf('C')==0})

将返回我所有以“C”开头的集合。

是否有可能先走一步,做基于“LAST_UPDATED”列中的过滤器,这样我将获得昨天更新所有“C”的集合。

这样的事情

 db.getCollectionNames().filter(function(c){ return (db.c.find({update_on: "01-Dec-2014"}).count()
 > 1)});

Eventhough查询运行正常的没有任何yeilding结果。

Answer 1:

你需要返回true ,即使一个记录存在是存在的集合的查询及时更新。

其次, db.c决心值c ,因此找到一个集合命名的计数c ,它不存在。 要解决c作为一个变量,我们需要把它作为db[c]

以下修改后的代码会这么做:

db.getCollectionNames().filter(function(c){
 var rec = db[c].count({update_on: "01-Dec-2014"});
 return (rec > 0);
})


文章来源: Return Collection names based on column value in Mongo