题解 | 每个月Top3的周杰伦歌曲

每个月Top3的周杰伦歌曲

https://www.nowcoder.com/practice/4ab6d198ea8447fe9b6a1cad1f671503

#18-25岁用户 2022年每个月 播放次数TOP3 周杰伦
with cet as(
    select distinct
        month(pl.fdate) as month,
        any_value(pl.user_id) as user_id,
        song_name,
        count(pl.song_id) as play_cnt,
        any_value(si.song_id) as song_id
    from play_log pl
    left join user_info ui on pl.user_id = ui.user_id
    left join song_info si on pl.song_id = si.song_id
    where 
        si.singer_name = "周杰伦"
        and year(pl.fdate) = 2022
        and ui.age between 18 and 25
    group by month,song_name
)

select 
    month,
    ranking,
    song_name,
    play_cnt as play_pv
from (
    select distinct
        month,
        row_number() over(partition by month order by play_cnt desc,song_id) as ranking,
        song_name,
        play_cnt 
    from cet
) as ranked
    
where ranking <= 3



全部评论

相关推荐

03-29 12:10
门头沟学院 C++
挣K存W养DOG:散漫消极者淘汰,一眼坑爹。实习几个月转正的时候说你加班太少,能力还行态度不够积极裁了,马上老实。
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客企业服务