鉴于下面显示的架构和 MongoDB shell 版本:2.0.4:
我将如何计算印象数数组中的项目数?
我在想我必须做一个 Map Reduce,这似乎有点复杂,我认为 count 函数会做到这一点。
有人可以证明这一点吗?
问问题
384 次
1 回答
1
一个简单的计数示例是:
var count = 0;
db.engagement.find({company_name: "me"},{impressions:1}).forEach(
function (doc) {
count += doc.impressions.length;
}
)
print("Impressions: " + count);
如果要处理大量文档,最好将计数保持为显式字段。您可以在推送到印象数数组时更新计数,或者根据需要使用增量 MapReduce重新计数更新的文档。
于 2012-09-30T23:56:27.203 回答