01. 작성쿼리
WITH vball_kor AS (SELECT
g.year AS year,
re.game_id AS game_id,
re.athlete_id AS athlete_id,
a.name AS name
FROM records AS re
JOIN events AS e ON re.event_id = e.id
JOIN teams AS t ON re.team_id = t.id
JOIN athletes AS a ON re.athlete_id = a.id
JOIN games AS g on re.game_id = g.id
WHERE e.event = 'Volleyball Women''s Volleyball'
AND team = 'KOR')
SELECT
DISTINCT
past.athlete_id AS id,
past.name
FROM vball_kor AS past
JOIN vball_kor AS next
ON past.year + 4 = next.year
WHERE past.athlete_id = next.athlete_id
02. 쿼리 결과

03. 풀이 포인트
1. CTE로 전처리: 여러 테이블을 조인하고 조건을 적용해, 문제에 필요한 정제된 데이터셋을 먼저 만들기
2. CTE결과를 셀프 조인하여 '연속된 출전 여부'를 비교
이번 문제는 여러 테이블이 조인되어있는 구조라서
우선적으로 테이블 간의 구조와 흐름을 파악하는 것이 문제 해결에 큰 도움이 되었습니다
셀프조인은 연속 날짜 비교 문제에서 적용했던 거라 바로 아이디어가 떠올랐네요
친구들이 '신인감독 김연경'을 되게 즐겨보고 있는데 문제로 만나게 되니 괜히 반갑네요 ㅎㅎ
'코딩 테스트 > 02. SQL' 카테고리의 다른 글
| (solvesql)Advent of SQL 2025 8일차 (0) | 2025.12.14 |
|---|---|
| (solvesql)Advent of SQL 2025 7일차 (0) | 2025.12.08 |
| (solvesql) Advent of SQL 2025 6일차 (0) | 2025.12.08 |
| (solvesql) Advent of SQL 2025 5일차 (0) | 2025.12.08 |
| [solvesql_Lv3] 미세먼지 수치의 계절간 차이(중앙값구하기) (0) | 2025.10.14 |
