我有这样的集合:
/* 1 */
{
"_id" : ObjectId("5a2e645e146ca85717059965"),
"number" : [
1,
2,
3,
4,
5,
6
]
}
/* 2 */
{
"_id" : ObjectId("5a2e647f146ca85717059973"),
"number" : [
5,
4,
3
]
}
/* 3 */
{
"_id" : ObjectId("5a2e6491146ca85717059977"),
"number" : [
4,
5,
6,
7,
8,
9,
1,
1,
1
]
}
现在我想将所有1
更改为a
表示将1替换为1,所以我写了这个查询:
db.getCollection('mtest1').update({},{"$set":{"number.$[i]":"a"}},{arrayFilters:[{i:1}]})
但是我收到了这个错误:
cannot use the part (number of number.$[i]) to traverse the element ({number: [ 1, 2, 3, 4, 5, 6 ]})
我搜索SF并找到一些解决方案,但没有一个主题适用于我