시작하기무료로 시작하기

종목별 BMI 구간

여름 스포츠별로 BMI가 어떻게 다른지 파악하려고 합니다. 이를 위해 다음이 포함된 보고서를 만드세요:

  • sport: 여름 스포츠의 이름
  • bmi_bucket: BMI를 세 구간으로 나눈 값: <.25, .25-.30, >.30
  • athletes: 고유 선수 수

정의: BMI = 100 * weight / (height squared).

또한 CASE 문은 행 단위로 실행되므로, 첫 번째 조건이 거짓일 때만 두 번째 조건이 적용됩니다. 따라서 이미 검사한 조건을 제외하기 위한 AND 문이 필요하지 않습니다.

참고가 필요하면 E:R 다이어그램을 보셔도 됩니다.

이 연습은 강의의 일부입니다

SQL로 리포트 만들기

강의 보기

연습 안내

  • summer_gamesathletes에서 데이터를 가져와 sport, bmi_bucket, athletes를 보여주는 쿼리를 작성하세요.
  • ANDELSE 없이 CASE 문을 사용해 bmi_bucket'<.25', '.25-.30', '>.30'의 세 구간으로 나누세요.
  • 집계하지 않은 필드로 GROUP BY 하세요.
  • 보고서는 sport로 정렬하고, 그다음 athletes를 내림차순으로 정렬하세요.

실습형 인터랙티브 연습

이 예제를 이 샘플 코드를 완성하여 풀어보세요.

-- Pull in sport, bmi_bucket, and athletes
SELECT 
	____,
    -- Bucket BMI in three groups: <.25, .25-.30, and >.30	
    CASE WHEN ____ THEN '<.25'
    WHEN ____ THEN '.25-.30'
    WHEN ____ THEN '>.30' END AS bmi_bucket,
    ____ AS athletes
FROM ____ AS s
JOIN ____ AS a
ON ____
-- GROUP BY non-aggregated fields
GROUP BY ____
-- Sort by sport and then by athletes in descending order
ORDER BY ____;
코드 편집 및 실행