Top Competitors

Sort by

recency

|

2494 Discussions

|

  • + 0 comments

    Long but functional code. Use MySQL:

    SELECT 
        hac.hacker_id,
        hac.name
    FROM hackers hac
    INNER JOIN (
        SELECT 
            sub.hacker_id,
            COUNT(cha.challenge_id) AS cantidad_challenge
        FROM submissions sub
        INNER JOIN challenges cha ON sub.challenge_id = cha.challenge_id
        INNER JOIN difficulty dif ON cha.difficulty_level = dif.difficulty_level
        WHERE sub.score = dif.score
        GROUP BY sub.hacker_id
        HAVING COUNT(cha.challenge_id) > 1
    ) AS msh ON hac.hacker_id = msh.hacker_id
    ORDER BY msh.cantidad_challenge DESC, hac.hacker_id ASC;
    
  • + 0 comments
    SELECT
        hack.Hacker_id,
        hack.name
    FROM Hackers AS hack
    
    INNER JOIN Submissions AS sub
        ON hack.hacker_id = sub.hacker_id
        
    INNER JOIN Challenges AS chall
        ON sub.challenge_id = chall.challenge_id
        
    INNER JOIN Difficulty AS diff
        ON chall.difficulty_level = diff.difficulty_level
        
    WHERE 
        sub.score = diff.score
    GROUP BY 
        hack.hacker_id, hack.name
    HAVING 
        COUNT(sub.submission_id) > 1
    ORDER BY
        COUNT(sub.submission_id) DESC, hack.Hacker_id ASC
    
    
    
  • + 0 comments

    MySQL

    select s.hacker_id,
            h.name
    from hackers h,
        Difficulty d,
        Challenges c,
        submissions s
    where h.hacker_id = s.hacker_id
    and d.difficulty_level = c.difficulty_level
    and s.challenge_id = c.challenge_id
    and s.score = (select d.score
                  from difficulty d
                  where d.difficulty_level = c.difficulty_level)
    group by s.hacker_id, h.name
    having count(s.challenge_id) > 1
    order by count(s.challenge_id) desc ,s.hacker_id 
        
    
  • + 0 comments
    SELECT
        s.hacker_id,
        h.name
    FROM submissions s
    JOIN challenges c ON s.challenge_id = c.challenge_id
    JOIN difficulty d ON c.difficulty_level = d.difficulty_level
    JOIN hackers h ON s.hacker_id = h.hacker_id
    WHERE s.score = d.score
    GROUP BY s.hacker_id, h.name
    HAVING COUNT(s.challenge_id) > 1
    ORDER BY COUNT(s.challenge_id) DESC, s.hacker_id ASC;
    
  • + 0 comments
    SELECT s.hacker_id, h.name
    FROM Hackers h
    JOIN Submissions s ON s.hacker_id = h.hacker_id
    JOIN Challenges c ON s.challenge_id = c.challenge_id
    JOIN Difficulty d ON c.difficulty_level = d.difficulty_level 
    WHERE s.score = d.score
    GROUP BY s.hacker_id, h.name
    HAVING COUNT(s.challenge_id) > 1
    ORDER BY COUNT(s.challenge_id) DESC, s.hacker_id ASC;