Welcome toVigges Developer Community-Open, Learning,Share
Welcome To Ask or Share your Answers For Others

Categories

0 votes
3.9k views
in Technique[技术] by (71.8m points)

如何使用mongodb去实现一个递归累加的效果

假如现在的数据库是这样的

[{ datetime: '2020-11-01', statu: '运作', count: 20 },
 { datetime: '2020-11-01', statu: '关闭', count: 20 }]

这是在固定时间段拉取到2天的变化数据

[{ datetime: '2020-11-02',statu: '运作',count: -1 },
 { datetime: '2020-11-02', statu: '关闭', count: 2 },
 { datetime:'2020-11-03',statu:'运作',count:-1 },
 { datetime:'2020-11-03', statu:'关闭', count:1 }]

现在需要将变化量统计更新到现在的数据库,更新如下:

[{ datetime: '2020-11-03', statu: '运作', count: 18 },
{ datetime: '2020-11-03', statu: '关闭', count: 20 }]

我自己尝试过使用聚合,但顶多只能实现对count的数据统计,更多的逻辑需要自己实现,非常复杂。拜托对mongodb熟悉的大佬,希望能给点思路,或者说mongodb有方法能使这个过程相对简洁些


与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome To Ask or Share your Answers For Others

1 Answer

0 votes
by (71.8m points)

根据status使用group然后使用sum,指定条件的话就前面match查询


与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome to Vigges Developer Community for programmer and developer-Open, Learning and Share
...