Sql 带和分组

Sql 带和分组,sql,oracle,group-by,Sql,Oracle,Group By,简化我有这样的东西: select register_date,count(*) from USER group by register_date; 结果是: 2016-01-20 10 2016-01-21 5 2016-01-22 8 这告诉我,在第一天,10个用户注册了超过5个,第二天注册了8个。 我需要有一个注册用户总数: 2016-01-20 10 2016-01-21 15 (10+5) 2016-01-22 23 (10+5+8) 有什么办法吗?提前谢谢。使用累计

简化我有这样的东西:

select register_date,count(*)
from USER
group by register_date;
结果是:

2016-01-20  10
2016-01-21  5
2016-01-22  8
这告诉我,在第一天,10个用户注册了超过5个,第二天注册了8个。 我需要有一个注册用户总数:

2016-01-20  10
2016-01-21  15 (10+5)
2016-01-22  23 (10+5+8)

有什么办法吗?提前谢谢。

使用累计金额。您可以通过聚合查询执行此操作,甚至:

select register_date, count(*),
       sum(count(*)) over (order by register_date) as running_count
from USER
group by register_date
order by register_date;

使用累积总和。您可以通过聚合查询执行此操作,甚至:

select register_date, count(*),
       sum(count(*)) over (order by register_date) as running_count
from USER
group by register_date
order by register_date;