On the journey of
[SolveSQL] 두 테이블 결합하기, 일부 데이터 조회하기 본문
SQL 문제풀이 기록! 2문제 가져왔다 :)
1. 두 테이블 결합하기 - https://solvesql.com/problems/join/
solvesql
solvesql.com
Q. 역대 올림픽 정보 데이터셋은 역대 올림픽 경기와 관련된 데이터가 들어있는 테이블로 이루어져 있습니다.
athletes 테이블에는 역대 올림픽 참가 선수의 이름이 들어 있습니다. events 테이블에는 종목과 경기 이름이 들어 있습니다. games 테이블에는 올림픽 개최 연도, 개최 도시와 시즌 정보가 기록되어 있습니다. records 테이블에는 역대 올림픽 참가 선수들의 신체 정보와 획득한 메달 정보가 기록되어 있습니다. 이 테이블은 다른 테이블과 매핑할 수 있는 ID 정보도 가지고 있습니다. teams 테이블에는 국가 정보가 기록되어 있습니다.
위 테이블 중 events 테이블과 records 테이블을 활용해 올림픽 골프 종목에 참가한 선수의 ID를 모두 조회하는 쿼리를 작성해주세요.
A.
select distinct(a.athlete_id)
from records a, events b
where a.event_id = b.id and b.sport = 'Golf'
일단 Select, From, Where을 작성해준 다음 각 구문에 맞는 특성을 써주면 비교적 알고리즘 따라가기가 수월해진다 :)
##Select [조회할 ID가 있는 테이블]
##from [events , records] : a,b 부여
##where [조건: events의 종목 = 'Golf'여야 하고, 조건2 : records의 종목명 = events의 종목명]
2. 일부 데이터 조회하기 - https://solvesql.com/problems/select-where/
solvesql
solvesql.com
Q. points 테이블은 프란시스 앤스컴이 만든 Anscombe's quartet 데이터를 담고 있습니다. 이 데이터는 quartet 컬럼에 의해 4개의 서브셋으로 나뉘어지고, 각 서브셋은 평균, 표본 분산, 상관계수 등이 거의 동일하나 데이터의 분포를 시각화하면 전혀 다른 분포를 가지는 특징이 있습니다.
points 테이블에서 quartet 컬럼의 값이 I인 데이터만 조회하는 쿼리를 작성해주세요.
A.
select
*
from
points
where
quartet = 'I'
## Select [조건에 해당하는 데이터는 모두 : *로 표시]
## From [Points 테이블]
## Where [조건: Quartet = 'I']
여기까지는 난이도 쉬움....인데, 다다음 포스팅 때부터는 난이도가 올라가지 않을까 싶다!
'코딩테스트 > SQL' 카테고리의 다른 글
[SolveSQL] 몇 분이서 오셨어요?, 일별 블로그 방문자 수 집계 (0) | 2023.06.12 |
---|---|
[SolveSQL] 레스토랑 웨이터의 팁 분석,최근 올림픽이 개최된 도시 (1) | 2023.06.09 |
[SolveSQL] 할부는 몇 개월로 해드릴까요,특정 컬럼만 조회하기 (0) | 2023.06.08 |
[SolveSQL] 데이터 그룹으로 묶기, 복수국적 메달 수상한 선수 찾기 (1) | 2023.06.07 |
[SolveSQL] 모든 데이터 조회하기,데이터 정렬하기 (0) | 2023.06.05 |