小编典典

MongoDB 选择计数组

all

我正在玩 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++;
    }
});

但是有没有使用聚合函数更简单/更快的方法?


阅读 212

收藏
2022-05-06

共1个答案

小编典典

这将是使用以下更简单的方法aggregate

db.contest.aggregate([
    {"$group" : {_id:"$province", count:{$sum:1}}}
])
2022-05-06