Javascript 多个集合之间的MongoDb删除操作
我试图创建一个简单的javascript程序,从mongoDb集合中删除未标记的图像Javascript 多个集合之间的MongoDb删除操作,javascript,mongodb,Javascript,Mongodb,我试图创建一个简单的javascript程序,从mongoDb集合中删除未标记的图像 我有两个收藏名称相册和图像 每个集合中的数据将为每个集合约100万条记录 相册集合的样本数据类似于{“_id”:0,“图像”:[24332753298365101137512974]} images集合中的样本数据类似于{“\u id”:61782,“高度”:480,“宽度”:640,“标签”:[“猫”,“工作”]} 我创建了以下javascript代码,但出于某种原因,它给出了imageList.image是
相册
和图像
相册
集合的样本数据类似于{“_id”:0,“图像”:[24332753298365101137512974]}
images
集合中的样本数据类似于{“\u id”:61782,“高度”:480,“宽度”:640,“标签”:[“猫”,“工作”]}
imageList.image
是undefined
错误
var albumImages = db.albums.aggregate([{$unwind:"$images"},{$group:_id:null,image:{$addToSet:"$images"}}}]);
var imageList = db.images.aggregate([{$group: {_id:null, image:{$addToSet:"$_id"}} }]);
for(var i = 0; i < imageList.image.length; i++) {
if(albumImages.image.indexOf(imageList.image[i]) < 0) {
db.images.removeOne({_id:imageList.image[i]});
}
}
var albumImages=db.albums.aggregate([{$unwind:$images},{$group:_id:null,image:{$addToSet:$images}}]);
var imageList=db.images.aggregate([{$group:{{U id:null,image:{$addToSet:“$\U id”}}}}]);
对于(var i=0;i
提前感谢。如果imagelist包含图像,则将图像推送到新数组中,并在该数组上执行for循环。您的javascript代码似乎存在多个语法错误(例如,第一行中的
$group:
后面缺少大括号,例如,仅存在所需的$addToSet构造的一部分)-这真的是您正在运行的代码吗?