mongo 聚合查询

2019-04-12 11:32:16 +08:00
 a19950321

我想查 id:1 type:1 的所有用户一共是多少条 ,只要 sum ,应该怎么写啊大神们

1298 次点击
所在节点    问与答
3 条回复
a19950321
2019-04-12 11:35:44 +08:00
大神救救急
Trim21
2019-04-12 13:55:08 +08:00
count

具体怎么用看文档
Vegetable
2019-04-12 14:07:31 +08:00
普通查询 count({id:1,sum:1})


聚合里边,能 match 就 match,
```javascript
db.getCollection("example").aggregate([
{
$match: {
id: 1,
type: 1
}
},
{
$group: {
_id: 1,
count:{$sum:1}
}
}])
```
如果不能 match,就要配合$cond
```javascript
db.getCollection("example").aggregate([
{
$group: {
_id: 1,
count: {
$sum: {
$cond: {
if: {
$and: [
{
$eq: ["$type", 1]
},
{
$eq: ["$id", 1]
}
]
},
then: 1,
else: 0
}
}
}
}
}
])
```
我可讨厌死 mogodb 的聚合了

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/554383

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX