반응형
Notice
Recent Posts
Recent Comments
Link
개발은 처음이라 개발새발
JOIN을 이용해 대륙별 평균 도시의 인구수를 구하라 [해커랭크] 본문
반응형
오늘은 JOIN과 관련된 해커랭크의 퀴즈를 들고왔습니다. 문제는 city, country라는 두개의 테이블이 있고 두 테이블을 조인 시켜 country 테이블에 있는 continent를 기준으로 city 테이블의 population 평균을 구하는 문제입니다.
두 테이블의 구조를 보면 매칭 시킬 코드가 보입니다. city에는 countrycode가 있고 country 테이블에는 code가 있습니다. 이 두 컬럼을 통해 JOIN을 시키면 될 것으로 보입니다. 제일 중요한 문제는 CONTINENT를 기준으로 하는 것과 POPULATION의 평균을 구하는 것인데요. 이를 위해서는 GROUP BY가 필요해보이는데요. GORUP BY를 적용할 컬럼은 당연히 COUNTRY.CONTINENT겠죠. 분석이 끝났으니 바로 쿼를 진행보겠습니다.
SELECT COUNTRY.CONTINENT, FLOOR(AVG(CITY.POPULATION))
FROM CITY
JOIN COUNTRY
ON CITY.CountryCode = COUNTRY.Code
GROUP BY COUNTRY.CONTINENT
Asia 693038
Europe 175138
Oceania 109189
South America 147435
Africa 274439
네, 이렇게 퀴즈를 풀어봤습니다. 문제에서 추가적으로 평균의 정수만 보여줄 수 있도록 소수점은 버리라 지시해서 FLOOR()함수를 추가적으로 사용했습니다.
반응형
'mysql' 카테고리의 다른 글
Self Join 퀴즈 풀어보기 [LeetCode] (0) | 2023.05.07 |
---|---|
Left Join 퀴즈 풀어보기 [LeetCode] (3) | 2023.05.06 |
My SQL CASE문 퀴즈풀기-2 (0) | 2023.04.30 |
My SQL CASE문 삼각형 종류 퀴즈로 연습하기[해커랭크] (1) | 2023.04.30 |
해커랭크 Top Earners 문제 풀이 [MySQL] (0) | 2023.04.23 |