12장
1분 퀴즈
1 정답
SELECT EXTRACT(YEAR_MONTH FROM issue_date) months,
SUM(cases) / SUM(tests) * 100 test_num
FROM covid19_data
WHERE countrycode = 'KOR'
GROUP BY 1
ORDER BY 1;
해설 covid19_data 테이블에서 countrycode 값이 KOR인 조건을 주고 EXTRACT() 함수를 사용해 월별로 집계합니다. 확진자 수는 cases, 검사 수는 tests에 있으므로 SUM() 함수로 각각의 월별 합계를 구하고 확진자 수를 검사 수로 나누면 검사 수 대비 확진자 수의 비율을 구할 수 있습니다.
2 정답
SELECT embarked, survived, COUNT(*) cnt
FROM titanic
GROUP BY 1, 2
ORDER BY 1, 2;
해설 탑승 항구는 embarked 칼럼에 있으므로 SELECT 절에 embarked, survived 칼럼을 명시하고, COUNT() 함수로 탑승 항구와 생존 여부에 따른 인원수를 구합니다. GROUP BY 절에서 1과 2는 각각 SELECT 절에 있는 embarked와 survived 칼럼을 의미합니다.