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

每个月Top3的周杰伦歌曲

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

select
    month,
    ranking,
    song_name,
    play_pv
from
    (
        select
            month(pl.fdate) as month,
            pl.song_id,
            si.song_name,
            row_number() over (
                PARTITION by
                    month(pl.fdate)
                order by
                    count(pl.song_id)desc,pl.song_id
            ) as ranking,
            count(pl.song_id) as play_pv
        from
            play_log as pl
            inner join user_info as ui on pl.user_id = ui.user_id
            inner join song_info as si on pl.song_id = si.song_id
        where
            ui.age between 18 and 25
            and year (pl.fdate) = 2022
            and si.singer_name = "周杰伦"
        group by
            month (pl.fdate),
            pl.song_id,
            si.song_name
    ) as tmp
where
    ranking < 4
order by
    month,
    ranking asc

全部评论

相关推荐

点赞 评论 收藏
分享
10-25 12:05
已编辑
湖南科技大学 Java
若梦难了:我有你这简历,已经大厂乱杀了
点赞 评论 收藏
分享
点赞 收藏 评论
分享
牛客网
牛客企业服务