Contest Leaderboard

  • + 0 comments

    WITH max_score_per_challenge AS ( SELECT hacker_id, challenge_id, MAX(score) AS maxscore FROM submissions GROUP BY hacker_id, challenge_id ),

    total_score AS ( SELECT hacker_id, SUM(maxscore) AS sumscore FROM max_score_per_challenge GROUP BY hacker_id )

    SELECT h.hacker_id, h.name, t.sumscore FROM Hackers as h JOIN total_score as t ON h.hacker_id = t.hacker_id WHERE t.sumscore > 0 ORDER BY t.sumscore DESC, h.hacker_id ASC