我正在玩 MongoDB 试图弄清楚如何做一个简单的
SELECT province, COUNT(*) FROM contest GROUP BY province
但我似乎无法使用聚合函数弄清楚。我可以使用一些非常奇怪的组语法来做到这一点
db.user.group({ "key": { "province": true }, "initial": { "count": 0 }, "reduce": function(obj, prev) { if (true != null) if (true instanceof Array) prev.count += true.length; else prev.count++; } });
但是有没有使用聚合函数更简单/更快的方法?
这将是使用以下更简单的方法aggregate:
aggregate
db.contest.aggregate([ {"$group" : {_id:"$province", count:{$sum:1}}} ])