https://solvesql.com/problems/multiple-medalist/
[풀이]
SELECT a.name
FROM records r
LEFT JOIN athletes a ON r.athlete_id = a.id
LEFT JOIN teams t ON r.team_id = t.id
LEFT JOIN games g ON r.game_id = g.id
WHERE g.year >= 2000 AND r.medal IS NOT NULL
GROUP BY a.id
HAVING COUNT(DISTINCT t.id) >= 2
ORDER BY a.name
*주의: group by를 unique key값인 id로 하지 않고 name으로 한 경우 동명이인때문에 잘못된 결과가 나온다
-참고
https://monamienamie.tistory.com/20
'solvesql' 카테고리의 다른 글
💫세션 재정의하기 (0) | 2025.01.20 |
---|---|
카테고리 별 매출 비율 (0) | 2025.01.16 |