select cid,cast(pv as decimal(10,3)),
row_number()over(order by pv desc,release_date desc) rk
from
(select uid,cid, count(*) pv
from play_record_tb
group by uid,cid
having count(*)>1) t
join course_info_tb c using(cid)
limit 3;
题目最后输出要求转换成浮点格式;每人只观看一次的视频要最早就筛选掉,不参加排名;最后限制3条数据用limit即可