知识点

  1. 本题login表没什么用直接使用passing_number和user
  2. 使用窗口函数先按照用户分组再按照日期进行排序求和就是通过题总数
  3. 题目最后输出的是每个人每天通过题目,一开始还以为是每个人最终通过多少题注意一下和那天的日期

代码

select name as u_n, date, 
sum(number) over(partition by user_id order by date) as ps_num
from passing_number as pn
join user as u
on pn.user_id = u.id
order by date, u_n