|
| 1 | +WITH development_submissions_ranked AS ( |
| 2 | + SELECT |
| 3 | + s."memberId"::bigint AS member_id, |
| 4 | + s."challengeId" AS challenge_id, |
| 5 | + s."submittedDate" AS submitted_date, |
| 6 | + ROW_NUMBER() OVER ( |
| 7 | + PARTITION BY s."memberId" |
| 8 | + ORDER BY s."submittedDate" ASC, s."challengeId" ASC |
| 9 | + ) AS submission_rank |
| 10 | + FROM reviews.submission s |
| 11 | + JOIN challenges."Challenge" c |
| 12 | + ON c.id = s."challengeId" |
| 13 | + JOIN challenges."ChallengeTrack" tr |
| 14 | + ON tr.id = c."trackId" |
| 15 | + WHERE tr.abbreviation = 'Dev' |
| 16 | +), |
| 17 | +development_first_submissions AS ( |
| 18 | + SELECT |
| 19 | + member_id, |
| 20 | + challenge_id, |
| 21 | + submitted_date |
| 22 | + FROM development_submissions_ranked |
| 23 | + WHERE submission_rank = 1 |
| 24 | +) |
| 25 | +SELECT |
| 26 | + m.handle AS "user.handle", |
| 27 | + c.name AS "challenge.challenge_name", |
| 28 | + dfs.submitted_date::date AS "newest_submitters.submit_date_date", |
| 29 | + max_rating.rating AS "submitter_profile.max_rating" |
| 30 | +FROM development_first_submissions dfs |
| 31 | +JOIN members.member m |
| 32 | + ON m."userId" = dfs.member_id |
| 33 | +JOIN challenges."Challenge" c |
| 34 | + ON c.id = dfs.challenge_id |
| 35 | +LEFT JOIN LATERAL ( |
| 36 | + SELECT |
| 37 | + mmr.rating |
| 38 | + FROM members."memberMaxRating" mmr |
| 39 | + WHERE mmr."userId" = dfs.member_id |
| 40 | + ORDER BY mmr.rating DESC NULLS LAST |
| 41 | + LIMIT 1 |
| 42 | +) max_rating |
| 43 | + ON TRUE |
| 44 | +WHERE dfs.submitted_date >= NOW() - INTERVAL '3 months' |
| 45 | +ORDER BY "newest_submitters.submit_date_date" DESC, "user.handle" ASC; |
0 commit comments