我想在MongoDB中将字段的类型从字符串更改为UUID,问题是字段存储在数组中(其中包含数千个对象) 我发现了几个类似于我的问题,但是如果集合中的数组中存在字段
,它们都无法回答如何更改类型集合看起来像:
A:1
B:1
C:1
D :
.[{a:1,
b:1,
c:1,
d:1},
{a:1,
b:1,
c:1,
d:1},
{a:1,
b:1,
c:1,
d:1}
]
例如,我想将b和d的类型从字符串更改为UUID。
我尝试了如下所示的ans解决方案:
db.Collection.find({"D.b" : {$type: 2}}).forEach(function(x){
x.D.b= UUID(x.D.b);
db.Collection.save(x);
})
我也尝试过:
db.Collection.find({"D.b" : {$type: 2}}).forEach(function(x){
x.D.forEach(function(doc){
doc.b= UUID(doc.b)
})
db.Collection.save(x);
})
解决方案均无效。