【发布时间】:2017-01-29 04:03:42
【问题描述】:
我是 MongoDB 新手,我想问一下如何为元素创建一个新字段,该字段表示该元素中另一个字段的大小。例如: - 我有这样的元素:
{
"_id" : ObjectId("57e1ffcb94d9ae534869c6cd"),
"url" : "http://www.nytimes.com",
"verticals" : [ 1, 2, 3, 4, 5, 12 ]
}
我想添加一个新字段,比如“numadx”,它是“verticals”数组的大小,在这种情况下,它是 6。结果可以是:
{
"_id" : ObjectId("57e1ffcb94d9ae534869c6cd"),
"url" : "http://www.nytimes.com",
"verticals" : [ 1, 2, 3, 4, 5, 12 ]
"numadx" : 6
}
我在终端使用命令:
db.test.update({},{$set:{numadx:{$size: "$verticals"}}},{multi:true})
但它返回错误:
"errmsg" : "'numadx.$size' 中的美元 ($) 前缀字段 '$size' 是 不适用于存储。”
有人可以帮助我吗:D?我这样做是为了根据 numadx 字段对该集合中的元素进行排序,这有助于我了解集合中这些元素的最少到最多的垂直值。
非常感谢。
【问题讨论】:
标签: mongodb mongodb-query aggregation-framework