题解 | #近三个月未完成试卷数为0的用户完成情况#

近三个月未完成试卷数为0的用户完成情况

http://www.nowcoder.com/practice/4a3acb02b34a4ecf9045cefbc05453fa

用dense_rank根据年月来排名,这样在同一个月里的日期都可以有相同的名次

select 
temp.uid,
count(temp.submit_time) as exam_complete_count
from 
(select *, 
 dense_rank() over (partition by uid order by date_format(start_time, "%Y-%m") desc) as ranking
 from exam_record) as temp
where temp.ranking <= 3
group by temp.uid
having count(temp.submit_time)=count(temp.start_time)
order by exam_complete_count desc, uid desc
全部评论

相关推荐

不愿透露姓名的神秘牛友
昨天 12:01
点赞 评论 收藏
分享
流浪的神仙:无恶意,算法一般好像都得9硕才能干算法太卷啦
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务