select p.player_id, p.username, p.level as current_level, (case when p.level >= 30 then '高阶玩家' else '新秀玩家' end) as player_category, l.total_april_spending from players p join ( select p.player_id, p.username, round(sum(t.cost), 2) as total_april_spending from players p join transactions t on p.player_id = t.player_id where date_format(p.creation_date, '%Y-%m') = '2025-03' and date_format(t.purchase_time, '%Y-%m-%d') between '2025-04-01' and '2025-04-30' group by p.player_id, p.username having count(t.purchase_time) >= 1) l on p.player_id = l.player_id order by player_category desc, l.total_april_spending desc, p.player_id

京公网安备 11010502036488号