题解 | #牛客每个人最近的登录日期(六)#
牛客每个人最近的登录日期(六)
http://www.nowcoder.com/practice/572a027e52804c058e1f8b0c5e8a65b4
使用窗口函数简单一些,先将名字连接过来,然后根据名字形成窗口,对日期排序并累加,最后再根据题目要求排序即可。
SELECT sub.name u_n,sub.date,
sum(sub.number) OVER (PARTITION BY sub.name ORDER BY sub.date) ps_num
FROM (SELECT pb.user_id,pb.number,pb.date,u.name FROM passing_number pb
JOIN user u ON pb.user_id=u.id) sub
ORDER BY 2,1;
查看1道真题和解析