我在mongodb中有一些包含数组的文档。现在我需要一个字段,其中包含此数组中项目的数量。因此,我需要更新文档以添加此字段。 简单地说,我认为可以这样做:
db.myDocument.update({
"itemsTotal": {
$exists: false
},
"items": {
$exists: true
}
}, {
$set: {
itemsTotal: {
$size: "$items"
}
}
}, {
multi: true
})
但是它以“不适合存储”完成。 此外,我尝试进行聚合,但它抛出异常:
"errmsg" : "exception: invalid operator '$size'",
"code" : 15999,
"ok" : 0
什么是最佳解决方案,以及我做错了什么?我正在考虑编写Java工具来计算总数并更新文档。