有登录却没有刷题的哪一天的数据不需要输出,只看登录刷题的,因此不需要login表

利用窗口函数,按姓名分区,按日期排序,计算累计数。

select b.name, a.date,
sum(a.number) over(partition by b.name order by a.date) as ps_num
from passing_number a 
left join user b on a.user_id = b.id
order by a.date, b.name
;