我有一堆前缀相同的集合,例如data_user_1、data_user_2等。还有一些介于两者之间的收藏,我想保留和跳过。
所以我在寻找的解决方案
a( 删除所有排除特定b( 删除所有数据_用户_*
我搜索了文档,但似乎没有允许这些操作的参数。谢谢
不幸的是,没有这样的选项。
-
您可以使用getCollectionNames 检索所有可用的集合
-
然后,您可以检查包含/排除方案。
-
当条件匹配时,可以对其执行
drop
。
我放弃了搜索,因为似乎没有"舒适的";方法所以我写了一个简短的脚本,它完全满足了要求(而且也很舒服^^(。
db.getCollectionNames().forEach(function(collname){
if(collname.includes('data_user')){
print('delete collection: ' + collname);
db.getCollection(collname).drop()}
});
希望这也能帮助其他人。