MySQL-mysql 分组统计求和sql

MySQL-mysql 分组统计求和sql

瑾兮 发布于 2017-04-28 字数 216 浏览 1300 回复 2

有一个充值订单表,部分表结果如下:

id  username  coins
1 aa 10
2 aa 20
3 aa 30
4 bb 5
5 cc 40
........

如果你对这篇文章有疑问,欢迎到本站 社区 发帖提问或使用手Q扫描下方二维码加群参与讨论,获取更多帮助。

扫码加入群聊

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

清晨说ぺ晚安 2017-07-02 2 楼

@张洪保 如果id是不重复的主键,试下这个sql:
select a.username, sum(a.coins) from orders a
where (select count(*) from orders b where b.username = a.username and b.id > a.id) < 20
group by a.username

灵芸 2017-05-24 1 楼

分三步
第一步

新建一个订单数量统计表

orders_stat

字段

username , orders_total

然后根据订单表填充这个统计表。

第二步

在统计表里提取出订单数量小于等于20的用户,再进行查询。

第三步

以后创建订单的时候,每新增一个订单,都去update一下订单统计表

对于这种情况最好拿空间换时间。