select month, ranking, song_name, play_pv from ( SELECT MONTH (fdate) AS month, song_name, COUNT(*) AS play_pv, -- 使用 COUNT(*) 更准确 ROW_NUMBER() OVER ( PARTITION BY MONTH (fdate) ORDER BY COUNT(*) DESC, p.song_id ASC -- 直接使用 COUNT(*) ) AS ranking FROM user_info u LEFT JOIN play_log p ON u.user_id = p...