按和分组mongodb
这是我以前的MySQL查询按和分组mongodb,mongodb,Mongodb,这是我以前的MySQL查询 SELECT Count(`status`) as amt, `status` FROM (`users`) GROUP BY `status` 这将返回类似于 +---------+----------+ | amt | status | +---------+----------+ | 3 | 0 | | 210 | 1 | | 330 | 2 | | 4233 |
SELECT Count(`status`) as amt, `status`
FROM (`users`)
GROUP BY `status`
这将返回类似于
+---------+----------+
| amt | status |
+---------+----------+
| 3 | 0 |
| 210 | 1 |
| 330 | 2 |
| 4233 | 3 |
| 540085 | 4 |
+---------+----------+
这似乎是有史以来最基本的Mongo查询,但在多次尝试使用$group
然后被告知使用$aggregate
之后,我仍然没有运气
db.users.aggregate([ {
$group: {
_id: "$status",
amt: { $status: 1 }
}
} ] )
我原以为这可以作为选择status字段的工作,但由于我包含了$,它将通过`amt:{$status:1}计算这些分组查询的数量
但我的回答只是
{ "result" : [ ], "ok" : 1 }
那么它是半工作的?但是没有归还任何东西。我想这就是\u id
部分的目的
我遵循了这个示例:您很接近,但是您需要使用
$sum
运算符来计算分组数:
db.users.aggregate([{
$group:{
_id:“$status”,
金额:{$sum:1}
}
} ] )