select month,ranking,song_name,play_pv from (select mm as 'month', row_number() over ( partition by mm order by cc desc,song_id ) as ranking, song_name, song_id, cc as play_pv from ( select distinct month(fdate) as mm, count(*) over ( partition by month(fdate), song_name ) as cc, song_id, song_name ...